Author: toad
Date: 2008-02-09 16:13:48 +0000 (Sat, 09 Feb 2008)
New Revision: 17767

Modified:
   trunk/freenet/src/freenet/node/simulator/RealNodeRequestInsertTest.java
   trunk/freenet/src/freenet/node/simulator/RealNodeRoutingTest.java
   trunk/freenet/src/freenet/node/simulator/RealNodeTest.java
Log:
Exit with failure if not settled in 2000 pings.

Modified: 
trunk/freenet/src/freenet/node/simulator/RealNodeRequestInsertTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeRequestInsertTest.java     
2008-02-09 16:11:46 UTC (rev 17766)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeRequestInsertTest.java     
2008-02-09 16:13:48 UTC (rev 17767)
@@ -70,7 +70,7 @@

         waitForAllConnected(nodes);

-        waitForPingAverage(0.98, nodes, random);
+        waitForPingAverage(0.98, nodes, random, MAX_PINGS);

         System.out.println();
         System.out.println("Ping average > 98%, lets do some 
inserts/requests");

Modified: trunk/freenet/src/freenet/node/simulator/RealNodeRoutingTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeRoutingTest.java   
2008-02-09 16:11:46 UTC (rev 17766)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeRoutingTest.java   
2008-02-09 16:13:48 UTC (rev 17767)
@@ -37,6 +37,7 @@
     static final short MAX_HTL = (short)10;
     static final boolean START_WITH_IDEAL_LOCATIONS = true;
     static final boolean FORCE_NEIGHBOUR_CONNECTIONS = true;
+    static final int MAX_PINGS = 2000;

     public static void main(String[] args) throws Exception {
         System.out.println("Routing test using real nodes:");
@@ -74,11 +75,11 @@

         waitForAllConnected(nodes);

-        waitForPingAverage(0.98, nodes, random);
+        waitForPingAverage(0.98, nodes, random, MAX_PINGS);

     }

-       static void waitForPingAverage(double accuracy, Node[] nodes, 
RandomSource random) {
+       static void waitForPingAverage(double accuracy, Node[] nodes, 
RandomSource random, int maxTests) {
         int cycleNumber = 0;
         int lastSwaps = 0;
         int lastNoSwaps = 0;
@@ -87,7 +88,7 @@
         RunningAverage avg = new SimpleRunningAverage(100, 0.0);
         RunningAverage avg2 = new BootstrappingDecayingRunningAverage(0.0, 
0.0, 1.0, 100, null);
         int pings = 0;
-        while(true) {
+        for(int total=0;total<maxTests;total++) {
             cycleNumber++;
             try {
                 Thread.sleep(5000);
@@ -163,6 +164,6 @@
                 return;
             }
         }
-               
+               System.exit(EXIT_PING_TARGET_NOT_REACHED);
        }
 }

Modified: trunk/freenet/src/freenet/node/simulator/RealNodeTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeTest.java  2008-02-09 
16:11:46 UTC (rev 17766)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeTest.java  2008-02-09 
16:13:48 UTC (rev 17767)
@@ -21,6 +21,7 @@

        static final int EXIT_BASE = NodeInitException.EXIT_NODE_UPPER_LIMIT;
        static final int EXIT_CANNOT_DELETE_OLD_DATA = EXIT_BASE + 3;
+       static final int EXIT_PING_TARGET_NOT_REACHED = EXIT_BASE + 4;

        /*
         Borrowed from mrogers simulation code (February 6, 2008)


Reply via email to