Alexander Polcyn 02d131b5ef fix mac crash on abruptly ended server thread %!s(int64=8) %!d(string=hai) anos
..
lib f8dc32e9e2 make end2end test ports dynamic and slight refactor %!s(int64=8) %!d(string=hai) anos
protos f8dc32e9e2 make end2end test ports dynamic and slight refactor %!s(int64=8) %!d(string=hai) anos
README.md 071f74f6f1 add copyright header to fix failing sanity tests %!s(int64=8) %!d(string=hai) anos
channel_closing_client.rb 4e606751db add end2end tests to formatter and adjust to formatter %!s(int64=8) %!d(string=hai) anos
channel_closing_driver.rb 4e606751db add end2end tests to formatter and adjust to formatter %!s(int64=8) %!d(string=hai) anos
channel_state_client.rb 4e606751db add end2end tests to formatter and adjust to formatter %!s(int64=8) %!d(string=hai) anos
channel_state_driver.rb 4e606751db add end2end tests to formatter and adjust to formatter %!s(int64=8) %!d(string=hai) anos
end2end_common.rb 4e606751db add end2end tests to formatter and adjust to formatter %!s(int64=8) %!d(string=hai) anos
gen_protos.sh 071f74f6f1 add copyright header to fix failing sanity tests %!s(int64=8) %!d(string=hai) anos
sig_handling_client.rb 4e606751db add end2end tests to formatter and adjust to formatter %!s(int64=8) %!d(string=hai) anos
sig_handling_driver.rb 4e606751db add end2end tests to formatter and adjust to formatter %!s(int64=8) %!d(string=hai) anos
sig_int_during_channel_watch_client.rb ea282e9c4c add passing test that kills a process while there are active watch chan state calls %!s(int64=8) %!d(string=hai) anos
sig_int_during_channel_watch_driver.rb 02d131b5ef fix mac crash on abruptly ended server thread %!s(int64=8) %!d(string=hai) anos

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