aboutsummaryrefslogtreecommitdiff
path: root/Examples/test-suite/d/threads_runme.1.d
diff options
context:
space:
mode:
Diffstat (limited to 'Examples/test-suite/d/threads_runme.1.d')
-rw-r--r--Examples/test-suite/d/threads_runme.1.d70
1 files changed, 0 insertions, 70 deletions
diff --git a/Examples/test-suite/d/threads_runme.1.d b/Examples/test-suite/d/threads_runme.1.d
deleted file mode 100644
index 206875824..000000000
--- a/Examples/test-suite/d/threads_runme.1.d
+++ /dev/null
@@ -1,70 +0,0 @@
-module threads_runme;
-
-import tango.core.Thread;
-import tango.io.Console;
-import Integer = tango.text.convert.Integer;
-import threads.Kerfuffle;
-
-// Spawn 8 threads.
-const uint NUM_THREADS = 8;
-
-// Run test for a few seconds on a 1GHz machine.
-const uint WORKER_LOOP_PASSES = 30000;
-
-void main() {
- auto kerf = new Kerfuffle();
- TestThread[] threads;
-
- // Invoke the threads.
- for (uint i = 0; i < NUM_THREADS; i++) {
- auto thread = new TestThread(kerf);
- threads ~= thread;
- thread.name = Integer.toString(i);
- thread.start();
- }
-
- // Wait for the threads to finish.
- foreach(thread; threads) {
- thread.join();
- }
-
- // Check if any thread has failed.
- foreach(thread; threads) {
- if (thread.failed) throw new Exception("Test failed.");
- }
-}
-
-class TestThread : Thread {
-public:
- this(Kerfuffle kerf) {
- super(&run);
- m_kerf = kerf;
- }
-
- void run() {
- failed = false;
- try {
- for (uint i = 0; i < WORKER_LOOP_PASSES; i++) {
- char[] given = "This is the test char[] that should come back. A number: " ~ Integer.toString(i);
- char[] received = m_kerf.StdString(given);
- if (received != given) {
- throw new Exception("StdString char[] does not match. Received: '" ~ received ~ "'. Expected: '" ~ given ~ "'.");
- }
- }
- for (uint i = 0; i < WORKER_LOOP_PASSES; i++) {
- char[] given = "This is the test char[] that should come back. A number: " ~ Integer.toString(i);
- char[] received = m_kerf.CharString(given);
- if (received != given) {
- throw new Exception("StdString char[] does not match. Received: '" ~ received ~ "'. Expected: '" ~ given ~ "'.");
- }
- }
- } catch (Exception e) {
- Cerr("Test failed (thread " ~ name() ~ "): " ~ e.msg).newline;
- failed = true;
- }
- }
-
- bool failed;
-private:
- Kerfuffle m_kerf;
-}