]> git.mxchange.org Git - quix0rs-apt-p2p.git/blobdiff - test_khashmir.py
Clean up the imports again.
[quix0rs-apt-p2p.git] / test_khashmir.py
index 7dcc247dde9344725ffd9c602d325db8e7e1d1a0..24a8760df054012fbf98dafb20d62ccaeafa5221 100644 (file)
@@ -1,10 +1,12 @@
-from unittest import *
-from khashmir import *
-import khash
+from unittest import defaultTestLoader, TextTestRunner, TestCase
+from sha import sha
+from random import randrange
+import os, sys
 
-from whrandom import randrange
+from twisted.internet import reactor
 
-import os
+from khashmir import Khashmir
+from khash import newID
 
 if __name__ =="__main__":
     tests = defaultTestLoader.loadTestsFromNames([sys.argv[0][:-3]])
@@ -71,13 +73,13 @@ class SimpleTests(TestCase):
 
 
 class MultiTest(TestCase):
-    num = 30
+    num = 20
     def _done(self, val):
         self.done = 1
         
     def setUp(self):
         self.l = []
-        self.startport = 4044
+        self.startport = 4088
         for i in range(self.num):
             self.l.append(Khashmir('127.0.0.1', self.startport + i, '/tmp/%s.test' % (self.startport + i)))
         reactor.iterate()
@@ -112,26 +114,32 @@ class MultiTest(TestCase):
         
     def testStoreRetrieve(self):
         for i in range(10):
-            K = khash.newID()
-            V = khash.newID()
+            K = newID()
+            V = newID()
             
-            self.done = 0
-            def _cb(val):
-                self.done = 1
-            self.l[randrange(0, self.num)].storeValueForKey(K, V, _cb)
-            while not self.done:
-                reactor.iterate()
+            for a in range(3):
+                self.done = 0
+                def _scb(val):
+                    self.done = 1
+                self.l[randrange(0, self.num)].storeValueForKey(K, V, _scb)
+                while not self.done:
+                    reactor.iterate()
 
-            self.got = 0
-            self.done = 0
 
-            def _cb(val):
-                if not val:
-                    self.done = 1
-                    self.assertEqual(self.got, 1)
-                elif V in val:
-                    self.got = 1
-                                    
-            self.l[randrange(0, self.num)].valueForKey(K, _cb)
-            while not self.done:
-                reactor.iterate()
+                def _rcb(val):
+                    if not val:
+                        self.done = 1
+                        self.assertEqual(self.got, 1)
+                    elif V in val:
+                        self.got = 1
+                for x in range(3):
+                    self.got = 0
+                    self.done = 0
+                    self.l[randrange(0, self.num)].valueForKey(K, _rcb)
+                    while not self.done:
+                        reactor.iterate()
+
+
+            
+            
+