Alexander Polcyn 8c12d9eae6 Add a test under ruby GC stress mode and fix non-GC-rooted variable bug 8 jaren geleden
..
lib 4d5c3102a1 fix remaining license notices 8 jaren geleden
protos 7897ae9308 auto-fix most of licenses 8 jaren geleden
README.md 071f74f6f1 add copyright header to fix failing sanity tests 9 jaren geleden
channel_closing_client.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
channel_closing_driver.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
channel_state_client.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
channel_state_driver.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
end2end_common.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
forking_client_client.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
forking_client_driver.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
gen_protos.sh 7897ae9308 auto-fix most of licenses 8 jaren geleden
grpc_class_init_client.rb 010ea65be5 remove calls to optional paramaters so that the test is compatible with ruby versions < 2.1 8 jaren geleden
grpc_class_init_driver.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
killed_client_thread_client.rb 2f3e588099 Dont assume that sigint wasnt masked when invoking ruby tests 8 jaren geleden
killed_client_thread_driver.rb 2f3e588099 Dont assume that sigint wasnt masked when invoking ruby tests 8 jaren geleden
load_grpc_with_gc_stress_driver.rb 8c12d9eae6 Add a test under ruby GC stress mode and fix non-GC-rooted variable bug 8 jaren geleden
multiple_killed_watching_threads_driver.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
sig_handling_client.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
sig_handling_driver.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
sig_int_during_channel_watch_client.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden
sig_int_during_channel_watch_driver.rb 7897ae9308 auto-fix most of licenses 8 jaren geleden

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).