Add evaluated string outputs to the test framework

- Integrate StringBuilder with the test framework. Test failures print
  "Actual: " followed by the evaluated values for the expression.
- Update SimplePrintingEventHandler to have the write function
  optionally output the newline.

Example:

[ RUN      ] Status.CompareToStatusCode
../../pw_status/status_test.cc:43: Failure
      Expected: Status(Status::ABORTED) == Status(Status::DATA_LOSS)
        Actual: ABORTED == DATA_LOSS
[  FAILED  ]

Change-Id: I4bd6f63cfd903ce2dc4959a1491825e7e743a522
7 files changed
tree: 46a427852c5e527f6694b6f343e992e7ad744c36
  1. docs/
  2. env_setup/
  3. pw_bloat/
  4. pw_build/
  5. pw_cli/
  6. pw_docgen/
  7. pw_dumb_io/
  8. pw_dumb_io_baremetal_stm32f429/
  9. pw_dumb_io_stdio/
  10. pw_preprocessor/
  11. pw_presubmit/
  12. pw_span/
  13. pw_status/
  14. pw_string/
  15. pw_toolchain/
  16. pw_unit_test/
  17. targets/
  18. .clang-format
  19. .gitignore
  20. .gn
  21. AUTHORS
  22. BUILD
  23. BUILD.gn
  24. BUILDCONFIG.gn
  25. CONTRIBUTING.md
  26. LICENSE
  27. modules.gni
  28. presubmit.py
  29. pw_vars_default.gni
  30. README.md
  31. WORKSPACE
README.md

Pigweed embedded oriented software libraries

Pigweed is a collection of embedded-focused libraries, which we call "modules". These modules are designed for small-footprint MMU-less microcontrollers like the ST Micro STM32L452 or the Nordic NRF82832. The modules are designed to facilitate easy integration into existing codebases.

Pigweed is in the early stages of development.