Jan Tattermusch 4d5c3102a1 fix remaining license notices 8 lat temu
..
lib 4d5c3102a1 fix remaining license notices 8 lat temu
protos 7897ae9308 auto-fix most of licenses 8 lat temu
README.md 071f74f6f1 add copyright header to fix failing sanity tests 8 lat temu
channel_closing_client.rb 7897ae9308 auto-fix most of licenses 8 lat temu
channel_closing_driver.rb 7897ae9308 auto-fix most of licenses 8 lat temu
channel_state_client.rb 7897ae9308 auto-fix most of licenses 8 lat temu
channel_state_driver.rb 7897ae9308 auto-fix most of licenses 8 lat temu
end2end_common.rb 7897ae9308 auto-fix most of licenses 8 lat temu
forking_client_client.rb 7897ae9308 auto-fix most of licenses 8 lat temu
forking_client_driver.rb 7897ae9308 auto-fix most of licenses 8 lat temu
gen_protos.sh 7897ae9308 auto-fix most of licenses 8 lat temu
grpc_class_init_client.rb 7897ae9308 auto-fix most of licenses 8 lat temu
grpc_class_init_driver.rb 7897ae9308 auto-fix most of licenses 8 lat temu
killed_client_thread_client.rb 7897ae9308 auto-fix most of licenses 8 lat temu
killed_client_thread_driver.rb 7897ae9308 auto-fix most of licenses 8 lat temu
multiple_killed_watching_threads_driver.rb 7897ae9308 auto-fix most of licenses 8 lat temu
sig_handling_client.rb 7897ae9308 auto-fix most of licenses 8 lat temu
sig_handling_driver.rb 7897ae9308 auto-fix most of licenses 8 lat temu
sig_int_during_channel_watch_client.rb 7897ae9308 auto-fix most of licenses 8 lat temu
sig_int_during_channel_watch_driver.rb 7897ae9308 auto-fix most of licenses 8 lat temu

README.md

This directory contains some grpc-ruby end to end tests.

Each test here involves two files: a "driver" and a "client". For example, the "channel_closing" test involves channel_closing_driver.rb and channel_closing_client.rb.

Typically, the "driver" will start up a simple "echo" server, and then spawn a client. It gives the client the address of the "echo" server as well as an address to listen on for control rpcs. Depending on the test, the client usually starts up a "ClientControl" grpc server for the driver to interact with (the driver can tell the client process to do strange things at different times, depending on the test).

So far these tests are mostly useful for testing process-shutdown related situations, since the client's run in separate processes.

These tests are invoked through the "tools/run_tests/run_tests.py" script (the Rakefile doesn't start these).