Convert video quality test from a TEST_F to a TEST fixture.

The purpose is to make the fixture reusable in downstream
projects. The CL adds the following things to API:

- api/test/video_quality_test_fixture.h
- api/test/create_video_quality_test_fixture.h

The following things are moved to API:

- call/bitrate_constraints.h (api/bitrate_constraints.h)
- call/simulated_network.h (api/test/simulated_network.h)
- call/media_type.h (api/mediatypes.h)

These are required by the params struct passed to the
fixture. I didn't attempt to split the params struct into
an internal-only and public version in this CL, and as
a result we need to pull in the above things. They are
quite harmless though, so I think it's worth it in order
to avoid splitting up the test config struct.

This CL doesn't solve all the problems we need to
implement downstream tests; we probably need to upstream
tracing variants of FakeNetworkPipe for instance, but
that will come later. This puts in place the basic
structure for now.

Bug: None
Change-Id: I35e26ed126fad27bc7b2a465400291084f6ac911
Reviewed-on: https://webrtc-review.googlesource.com/69601
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23714}
23 files changed
tree: cffb37b6bb085e263ef494be22eec6f05331bc07
  1. api/
  2. audio/
  3. build_overrides/
  4. call/
  5. common_audio/
  6. common_video/
  7. data/
  8. examples/
  9. infra/
  10. logging/
  11. media/
  12. modules/
  13. ortc/
  14. p2p/
  15. pc/
  16. resources/
  17. rtc_base/
  18. rtc_tools/
  19. sdk/
  20. stats/
  21. style-guide/
  22. system_wrappers/
  23. test/
  24. third_party/
  25. tools_webrtc/
  26. video/
  27. .clang-format
  28. .git-blame-ignore-revs
  29. .gitignore
  30. .gn
  31. .vpython
  32. AUTHORS
  33. BUILD.gn
  34. CODE_OF_CONDUCT.md
  35. codereview.settings
  36. common_types.h
  37. DEPS
  38. LICENSE
  39. license_template.txt
  40. LICENSE_THIRD_PARTY
  41. native-api.md
  42. OWNERS
  43. PATENTS
  44. PRESUBMIT.py
  45. presubmit_test.py
  46. presubmit_test_mocks.py
  47. pylintrc
  48. README.chromium
  49. README.md
  50. style-guide.md
  51. THIRD_PARTY_CHROMIUM_DEPS.json
  52. THIRD_PARTY_WEBRTC_DEPS.json
  53. typedefs.h
  54. WATCHLISTS
  55. webrtc.gni
  56. whitespace.txt
README.md

WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.

Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.

The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.

Development

See http://www.webrtc.org/native-code/development for instructions on how to get started developing with the native code.

Authoritative list of directories that contain the native API header files.

More info