xref: /aosp_15_r20/external/openscreen/cast/test/README.md (revision 3f982cf4871df8771c9d4abe6e9a6f8d829b2736)
1*3f982cf4SFabien Sanglard# Cast Integration Tests
2*3f982cf4SFabien Sanglard
3*3f982cf4SFabien SanglardThis file contains notes about the integration tests under this directory,
4*3f982cf4SFabien Sanglardincluding how they tie into other systems or tests if relevant.
5*3f982cf4SFabien Sanglard
6*3f982cf4SFabien Sanglard## Device Authentication
7*3f982cf4SFabien Sanglard
8*3f982cf4SFabien SanglardThe tests in `device_auth_test.cc` verify sender and receiver authentication
9*3f982cf4SFabien Sanglardcode against each other to ensure we are at least self-consistent.  These tests
10*3f982cf4SFabien Sanglardencompass successful device authentication, authentication errors,
11*3f982cf4SFabien Sanglardauthenticating with a revocation list, and various revocation list failures.
12*3f982cf4SFabien Sanglard
13*3f982cf4SFabien SanglardIn order to enforce sender and receiver code separation, these tests can also
14*3f982cf4SFabien Sanglardrecord the protobuf data they generate for use in unit tests.  For example, a
15*3f982cf4SFabien Sanglard`CastMessage` containing an `AuthChallenge` from sender code can be used as
16*3f982cf4SFabien Sanglardfixed input to receiver code.  Currently, only receiver code uses this kind of
17*3f982cf4SFabien Sanglarddata because the sender code just uses existing test data imported from
18*3f982cf4SFabien SanglardChromium.
19*3f982cf4SFabien Sanglard
20*3f982cf4SFabien SanglardNew test data may need to be generated if a bug is found in either sender or
21*3f982cf4SFabien Sanglardreceiver code or if new test certificates need to be used.  To generate new
22*3f982cf4SFabien Sanglarddata, build and run `make_crl_tests` and run this specific integration test:
23*3f982cf4SFabien Sanglard``` bash
24*3f982cf4SFabien Sanglard$ out/Debug/openscreen_unittests --gtest_filter=DeviceAuthTest.MANUAL_SerializeTestData
25*3f982cf4SFabien Sanglard```
26*3f982cf4SFabien SanglardNote that this test will not run without being exactly named in the filter.  The
27*3f982cf4SFabien Sanglardpaths to which they will write are fixed and are the same as from where the
28*3f982cf4SFabien Sanglardtests expect to read.
29