xref: /aosp_15_r20/external/grpc-grpc/src/ruby/end2end/README.md (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
1*cc02d7e2SAndroid Build Coastguard WorkerThis directory contains some grpc-ruby end to end tests.
2*cc02d7e2SAndroid Build Coastguard Worker
3*cc02d7e2SAndroid Build Coastguard WorkerEach test here involves two files: a "driver" and a "client". For example,
4*cc02d7e2SAndroid Build Coastguard Workerthe "channel_closing" test involves channel_closing_driver.rb
5*cc02d7e2SAndroid Build Coastguard Workerand channel_closing_client.rb.
6*cc02d7e2SAndroid Build Coastguard Worker
7*cc02d7e2SAndroid Build Coastguard WorkerTypically, the "driver" will start up a simple "echo" server, and then
8*cc02d7e2SAndroid Build Coastguard Workerspawn a client. It gives the client the address of the "echo" server as
9*cc02d7e2SAndroid Build Coastguard Workerwell as an address to listen on for control rpcs. Depending on the test, the
10*cc02d7e2SAndroid Build Coastguard Workerclient usually starts up a "ClientControl" grpc server for the driver to
11*cc02d7e2SAndroid Build Coastguard Workerinteract with (the driver can tell the client process to do strange things at
12*cc02d7e2SAndroid Build Coastguard Workerdifferent times, depending on the test).
13*cc02d7e2SAndroid Build Coastguard Worker
14*cc02d7e2SAndroid Build Coastguard WorkerSo far these tests are mostly useful for testing process-shutdown related
15*cc02d7e2SAndroid Build Coastguard Workersituations, since the client's run in separate processes.
16*cc02d7e2SAndroid Build Coastguard Worker
17*cc02d7e2SAndroid Build Coastguard WorkerThese tests are invoked through the "tools/run_tests/run_tests.py" script (the
18*cc02d7e2SAndroid Build Coastguard WorkerRakefile doesn't start these).
19