[test_pilot] error restructuring

The principal goal of this CL is to replace some strings that were used
to identify error sources with the source errors themselves. This posed
a challenge, because the widely-used error enum would no longer be Eq
or PartialEq when some source errors were referenced.

To make this tractable, the single error enum UsageError was factored
in a logical way into BuildError and UsageError. A BuildError was
defined to wrap UsageErrors. This approach organizes errors in a
reasonable way while still allowing tests to use Eq/PartialEq when
asserting error results.

Test: tests updated

Bug: 327640651
Change-Id: If453b7362f9e09f955f05d369ebface034ebc89f
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1200364
Reviewed-by: Christopher Johnson <crjohns@google.com>
Commit-Queue: Dale Sather <dalesat@google.com>
Reviewed-by: Miguel Flores <miguelfrde@google.com>
2 files changed
tree: 27e56db2fafa6061676533a8e7bc6d890c7e871a
  1. .helix/
  2. boards/
  3. build/
  4. bundles/
  5. docs/
  6. examples/
  7. infra/
  8. products/
  9. scripts/
  10. sdk/
  11. src/
  12. third_party/
  13. tools/
  14. zircon/
  15. .clang-format
  16. .clang-tidy
  17. .editorconfig
  18. .git-blame-ignore-revs
  19. .gitattributes
  20. .gitignore
  21. .gitmodules
  22. .gn
  23. .ignore
  24. analysis_options.yaml
  25. AUTHORS
  26. BUILD.gn
  27. CODE_OF_CONDUCT.md
  28. CONTRIBUTING.md
  29. fuchsia.code-workspace
  30. LICENSE
  31. OWNERS
  32. PATENTS
  33. pyproject.toml
  34. pyrightconfig.json
  35. README.md
  36. rustfmt.toml
  37. shac.star
  38. shac.textproto
README.md

Fuchsia

What is Fuchsia?

Fuchsia is an open source, general purpose operating system supporting modern 64-bit Intel and ARM processors.

We expect everyone interacting with our project to respect our code of conduct.

Read more about Fuchsia's principles.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.