1 /***************************************************************************
2 * Copyright (C) 2004 by Intra2net AG *
5 ***************************************************************************/
18 #include <cppunit/extensions/TestFactoryRegistry.h>
19 #include <cppunit/ui/text/TestRunner.h>
20 #include <cppunit/extensions/HelperMacros.h>
22 #include <socket_client.hxx>
23 #include <socket_server.hxx>
26 using namespace libt2n;
27 using namespace CppUnit;
29 class test_comm : public TestFixture
31 CPPUNIT_TEST_SUITE(test_comm);
33 CPPUNIT_TEST(UnixCommToServer);
34 CPPUNIT_TEST(UnixCommToServerAndBack);
36 CPPUNIT_TEST_SUITE_END();
46 void UnixCommToServer()
55 CPPUNIT_FAIL("fork error");
61 // wait till server is up
63 socket_client_connection sc("./socket");
65 // don't call atexit and stuff
72 socket_server ss("./socket");
75 for (int i=0; i < 10; i++)
77 ss.fill_buffer(1000000);
79 if(ss.get_packet(data))
84 CPPUNIT_ASSERT_EQUAL(string("hello"),data);
87 void UnixCommToServerAndBack()
95 CPPUNIT_FAIL("fork error");
101 socket_server ss("./socket");
102 ss.set_logging(&cerr,debug);
105 for (int i=0; i < 10; i++)
107 ss.fill_buffer(1000000);
112 if(ss.get_packet(data,cid))
114 server_connection* con=ss.get_connection(cid);
125 // don't call atexit and stuff
134 // wait till server is up
136 socket_client_connection sc("./socket");
140 sc.fill_buffer(1000000);
143 CPPUNIT_ASSERT_EQUAL(string("DEF"),data);
147 sc.fill_buffer(1000000);
150 CPPUNIT_ASSERT_EQUAL(string("xyz"),data);
159 CPPUNIT_TEST_SUITE_REGISTRATION(test_comm);