[modular][testing] Test harness component & gtest fixture

This CL introduces two features:
* A component that provides the TestHarness as a service.
  (`modular_test_harness.cmx`)
* A gtest fixture that exposes TestHarness using
  `modular_test_harness.cmx`.

modular_test_harness.cmx is intended to be used by test fixtures in
other languages such as Dart and C++.

Also in this CL:
* TestHarnessImpl will accept and invoke an exit callback if the test
  harness becomes unavailable.

Test: `modular_test_harness_test` exercises the test fixture, which also
exercises modular_test_harness.cmx

Change-Id: I58a4d0f80e218fca6bf896d0a1a1843f39e21764
11 files changed
tree: fe93d204805b11b8b28de800e108010b2fef510b
  1. boards/
  2. build/
  3. buildtools/
  4. bundles/
  5. docs/
  6. examples/
  7. garnet/
  8. peridot/
  9. products/
  10. scripts/
  11. sdk/
  12. src/
  13. third_party/
  14. tools/
  15. zircon/
  16. .clang-format
  17. .dir-locals.el
  18. .gitattributes
  19. .gitignore
  20. .gn
  21. AUTHORS
  22. BUILD.gn
  23. CODE_OF_CONDUCT.md
  24. CONTRIBUTING.md
  25. LICENSE
  26. OWNERS
  27. PATENTS
  28. README.md
  29. rustfmt.toml
README.md

Fuchsia

Pink + Purple == Fuchsia (a new operating system)

What is Fuchsia?

Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.

Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See the documentation.