tree: 268eb9c59d9ed8e646e3c563112369058c6beb27 [path history] [tgz]
  1. channel_util/
  2. client_suite/
  3. server_suite/

FIDL dynsuite

The FIDL dynsuite tests clients and servers in FIDL bindings, ensuring they behave according to the bindings spec. It is implemented as two independent test suites: the client_suite and the server_suite.

Tests are run by the harness component against a runner component.

Each suite has a single harness, and many runners: one for each binding flavor. For example, “C++ natural” and “C++ wire” are separate runners.

Tests use two FIDL protocols: Runner and Target. See clientsuite.test.fidl and serversuite.test.fidl for more details.

The tests are written in C++ using GoogleTest in client_suite/harness/tests and server_suite/harness/tests.

Running the tests

fx set core.x64 --with //bundles/fidl:tests
fx test fidl_{client,server}_suite   # run all tests
fx test fidl_server_suite_rust_test  # run the Rust server suite test