Author: suokko
Date: Mon Jun 30 01:55:15 2008
New Revision: 27601

URL: http://svn.gna.org/viewcvs/wesnoth?rev=27601&view=rev
Log:
Test case to make network::manager ready to crash

Modified:
    trunk/SConstruct
    trunk/src/SConscript
    trunk/src/tests/main.cpp
    trunk/src/tests/test_network_worker.cpp

Modified: trunk/SConstruct
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/SConstruct?rev=27601&r1=27600&r2=27601&view=diff
==============================================================================
--- trunk/SConstruct (original)
+++ trunk/SConstruct Mon Jun 30 01:55:15 2008
@@ -220,9 +220,9 @@
 
 env.Append(CPPPATH = ["#/src", "#/"])
 
-boost_test_dyn_link = boost_auto_test = False
+boost_test_dyn_link = False
 if 'test' in COMMAND_LINE_TARGETS:
-    boost_test_dyn_link = boost_auto_test = 
conf.CheckBoost('unit_test_framework')
+    boost_test_dyn_link =  conf.CheckBoost('unit_test_framework', 
require_version = "1.34.0")
 
 have_msgfmt = env["MSGFMT"]
 if not have_msgfmt:
@@ -273,15 +273,6 @@
 for d in installdirs:
     env[d] = os.path.join(env["prefix"], env[d])
 
-test_env = env.Clone()
-if boost_test_dyn_link:
-    test_env.Append(CPPDEFINES = "BOOST_TEST_DYN_LINK")
-    if boost_auto_test:
-        test_env.Append(CPPDEFINES = "WESNOTH_BOOST_AUTO_TEST_MAIN")
-    else:
-        test_env.Append(CPPDEFINES = "WESNOTH_BOOST_TEST_MAIN")
-Export("test_env")
-
 if env["PLATFORM"] == 'win32':
     env.Append(LIBS = ["wsock32", "intl"], CXXFLAGS = ["-mthreads"], LINKFLAGS 
= ["-mthreads"])
 if env["PLATFORM"] == 'darwin':                        # Mac OS X
@@ -306,6 +297,12 @@
 env.AppendUnique(**builds[build])
 env.Append(CXXFLAGS = os.environ.get('CXXFLAGS', []), LINKFLAGS = 
os.environ.get('LDFLAGS', []))
 env.MergeFlags(env["extra_flags_" + build])
+
+test_env = env.Clone()
+if boost_test_dyn_link:
+    test_env.Append(CPPDEFINES = "BOOST_TEST_DYN_LINK")
+Export("test_env")
+
 
 SConscript("src/SConscript", build_dir = os.path.join("build", build), exports 
= "env")
 Import(binaries + ["sources"])
@@ -318,6 +315,7 @@
 env.Alias("all", map(Alias, binaries))
 env.Default(map(Alias, env["default_targets"]))
 all = env.Alias("all")
+
 
 #
 # Utility productions (Unix-like systems only)

Modified: trunk/src/SConscript
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/SConscript?rev=27601&r1=27600&r2=27601&view=diff
==============================================================================
--- trunk/src/SConscript (original)
+++ trunk/src/SConscript Mon Jun 30 01:55:15 2008
@@ -317,8 +317,9 @@
 test_sources = Split("""
     tests/main.cpp
     tests/test_util.cpp
-    """)
-test = test_env.Program("test", test_sources + [libwesnoth_core, libwesnoth])
+    tests/test_network_worker.cpp
+    """)
+test = test_env.Program("test", test_sources +  [libwesnoth_core, libwesnothd])
 Export("test")
 
 if env["svnrev"] != "" and env["svnrev"] != "exported":

Modified: trunk/src/tests/main.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/tests/main.cpp?rev=27601&r1=27600&r2=27601&view=diff
==============================================================================
--- trunk/src/tests/main.cpp (original)
+++ trunk/src/tests/main.cpp Mon Jun 30 01:55:15 2008
@@ -11,15 +11,9 @@
 
    See the COPYING file for more details.
 */
-#ifdef WESNOTH_BOOST_AUTO_TEST_MAIN
-       #define BOOST_AUTO_TEST_MAIN
-       #include <boost/test/auto_unit_test.hpp>
-#else
-       #define BOOST_TEST_MAIN
-       #include <boost/test/unit_test.hpp>
-#endif
+#define BOOST_TEST_MAIN
+#include <boost/test/unit_test.hpp>
 
-#if WESNOTH_BOOST_TEST_MAIN
 
 struct wesnoth_global_fixture {
        wesnoth_global_fixture() 
@@ -34,7 +28,6 @@
 
 BOOST_GLOBAL_FIXTURE( wesnoth_global_fixture );
 
-#endif
 
 /*
  * This is a main compilation unit for the test program.

Modified: trunk/src/tests/test_network_worker.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/tests/test_network_worker.cpp?rev=27601&r1=27600&r2=27601&view=diff
==============================================================================
--- trunk/src/tests/test_network_worker.cpp (original)
+++ trunk/src/tests/test_network_worker.cpp Mon Jun 30 01:55:15 2008
@@ -25,7 +25,7 @@
 
 const int TEST_PORT = 15010;
 const int MIN_THREADS = 1;
-const int MAX_THREADS = 0;
+const int MAX_THREADS = 1;
 const std::string LOCALHOST = "localhost"; 
 
 network::manager* manager;
@@ -47,7 +47,7 @@
        BOOST_WARN_MESSAGE(connections == 0, "There is open "<< connections <<" 
connections before test!");
        ::manager = new network::manager(MIN_THREADS,MAX_THREADS);
 
-       ::server = new 
network::server_manager(TEST_PORT,network::server_manager::MUST_CREATE_SERVER);
+       server = new 
network::server_manager(TEST_PORT,network::server_manager::MUST_CREATE_SERVER);
        BOOST_REQUIRE_MESSAGE(server->is_running(), "Can't start server!");
 
        client_client1 = network::connect(LOCALHOST, TEST_PORT);
@@ -97,8 +97,35 @@
 
 }
 
-BOOST_AUTO_TEST_CASE( test_send_server )
+BOOST_AUTO_TEST_CASE( test_sdl_thread_wait_crash )
 {
+       delete server;
+       delete ::manager;
+
+#if 0
+       ::manager = new network::manager(MIN_THREADS,MAX_THREADS);
+       client_client1 = network::connect(LOCALHOST, TEST_PORT);
+       BOOST_CHECK_MESSAGE(client_client1 > 0, "Can't connect to server");
+       delete ::manager;
+       ::manager = new network::manager(MIN_THREADS,MAX_THREADS);
+       client_client1 = network::connect(LOCALHOST, TEST_PORT);
+       BOOST_CHECK_MESSAGE(client_client1 > 0, "Can't connect to server");
+       delete ::manager;
+
+       ::manager = new network::manager(MIN_THREADS,MAX_THREADS);
+       server = new 
network::server_manager(TEST_PORT,network::server_manager::MUST_CREATE_SERVER);
+       client_client1 = network::connect(LOCALHOST, TEST_PORT);
+       BOOST_CHECK_MESSAGE(client_client1 > 0, "Can't connect to server");
+       delete ::server;
+       delete ::manager;
+
+       ::manager = new network::manager(MIN_THREADS,MAX_THREADS);
+       client_client1 = network::connect(LOCALHOST, TEST_PORT);
+       BOOST_CHECK_MESSAGE(client_client1 > 0, "Can't connect to server");
+       delete ::manager;
+#endif
+       ::manager = new network::manager(MIN_THREADS,MAX_THREADS);
+       server = new 
network::server_manager(TEST_PORT,network::server_manager::MUST_CREATE_SERVER);
 }
 
 BOOST_AUTO_TEST_CASE( test_multiple_connections )


_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits

Reply via email to