00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00024 #include "config.h"
00025
00026 #include <scalestack/kernel/test.h>
00027
00028 class test_suite: public scalestack::kernel::test_suite<test_suite>
00029 {
00030 public:
00031
00032 void setup(void)
00033 {
00034 add_default_threading_service();
00035 add_default_event_service();
00036 core->add_module_option_value("echo::server::tcp", "addresses",
00037 "localhost:32123");
00038 core->add_module_option_value("echo::flood::tcp", "addresses",
00039 "localhost:32123");
00040 core->set_signal_handlers();
00041 }
00042
00043 void test_default(void)
00044 {
00045 core->run();
00046 }
00047
00048 void test_iterations(void)
00049 {
00050 core->add_module_option_value("echo::flood::tcp", "iterations", "5");
00051 core->run();
00052 }
00053
00054 void test_reconnect(void)
00055 {
00056 core->add_module_option_value("echo::flood::tcp", "iterations", "5");
00057 core->add_module_option_value("echo::flood::tcp", "reconnect", "True");
00058 core->run();
00059 }
00060
00061 void test_count(void)
00062 {
00063 core->add_module_option_value("echo::flood::tcp", "count", "5");
00064 core->run();
00065 }
00066
00067 void test_write_size(void)
00068 {
00069 core->add_module_option_value("echo::flood::tcp", "write_size", "128");
00070 core->run();
00071 }
00072
00073 void test_buffered_write_size(void)
00074 {
00075 core->add_module_option_value("echo::flood::tcp", "write_size", "128");
00076 core->add_module_option_value("echo::flood::tcp", "flush", "False");
00077 core->run();
00078 }
00079
00080 void test_large_buffer(void)
00081 {
00082 core->add_module_option_value("echo::flood", "random_buffer_size",
00083 "1048576");
00084 core->run();
00085 }
00086
00087 void test_default_addresses(void)
00088 {
00089 core->add_module_option_value("echo::server::tcp", "addresses", "32123");
00090 core->run();
00091 }
00092
00093 test_suite(int argc, const char** argv):
00094 scalestack::kernel::test_suite<test_suite>(argc, argv)
00095 {
00096 test_case(test_suite::test_default);
00097 test_case(test_suite::test_iterations);
00098 test_case(test_suite::test_reconnect);
00099 test_case(test_suite::test_count);
00100 test_case(test_suite::test_write_size);
00101 test_case(test_suite::test_buffered_write_size);
00102 test_case(test_suite::test_large_buffer);
00103 test_case(test_suite::test_default_addresses);
00104 }
00105 };
00106
00107 int main(int argc, const char* argv[])
00108 {
00109 test_suite test_suite(argc - 1, argv + 1);
00110 test_suite.run();
00111 return 0;
00112 }