]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/blobdiff - src/allmydata/test/test_web.py
remove get_serverid from DownloadStatus.add_dyhb_request and customers
[tahoe-lafs/tahoe-lafs.git] / src / allmydata / test / test_web.py
index 951f5541beb6c95d2852b0ec07a9ced6318fc6be..2479c70f0cde77c4c453cbda9016c9d926870907 100644 (file)
@@ -74,12 +74,19 @@ class FakeUploader(service.Service):
     def get_helper_info(self):
         return (None, False)
 
+class FakeIServer:
+    def __init__(self, binaryserverid):
+        self.binaryserverid = binaryserverid
+    def get_name(self): return "short"
+    def get_longname(self): return "long"
+    def get_serverid(self): return self.binaryserverid
+
 def build_one_ds():
     ds = DownloadStatus("storage_index", 1234)
     now = time.time()
 
-    serverid_a = hashutil.tagged_hash("foo", "serverid_a")[:20]
-    serverid_b = hashutil.tagged_hash("foo", "serverid_b")[:20]
+    serverA = FakeIServer(hashutil.tagged_hash("foo", "serverid_a")[:20])
+    serverB = FakeIServer(hashutil.tagged_hash("foo", "serverid_a")[:20])
     storage_index = hashutil.storage_index_hash("SI")
     e0 = ds.add_segment_request(0, now)
     e0.activate(now+0.5)
@@ -96,18 +103,18 @@ def build_one_ds():
     e.activate(now)
     e.deliver(now, 0, 140, 0.5)
 
-    e = ds.add_dyhb_request(serverid_a, now)
+    e = ds.add_dyhb_request(serverA, now)
     e.finished([1,2], now+1)
-    e = ds.add_dyhb_request(serverid_b, now+2) # left unfinished
+    e = ds.add_dyhb_request(serverB, now+2) # left unfinished
 
     e = ds.add_read_event(0, 120, now)
     e.update(60, 0.5, 0.1) # bytes, decrypttime, pausetime
     e.finished(now+1)
     e = ds.add_read_event(120, 30, now+2) # left unfinished
 
-    e = ds.add_block_request(serverid_a, 1, 100, 20, now)
+    e = ds.add_block_request(serverA, 1, 100, 20, now)
     e.finished(20, now+1)
-    e = ds.add_block_request(serverid_a, 1, 120, 30, now+1) # left unfinished
+    e = ds.add_block_request(serverB, 1, 120, 30, now+1) # left unfinished
 
     # make sure that add_read_event() can come first too
     ds1 = DownloadStatus(storage_index, 1234)
@@ -575,7 +582,8 @@ class Web(WebMixin, WebErrorMixin, testutil.StallMixin, testutil.ReallyEqualMixi
             # serverids[] keys are strings, since that's what JSON does, but
             # we'd really like them to be ints
             self.failUnlessEqual(data["serverids"]["0"], "phwr")
-            self.failUnlessEqual(data["serverids"]["1"], "cmpu")
+            self.failUnless(data["serverids"].has_key("1"), data["serverids"])
+            self.failUnlessEqual(data["serverids"]["1"], "cmpu", data["serverids"])
             self.failUnlessEqual(data["server_info"][phwr_id]["short"], "phwr")
             self.failUnlessEqual(data["server_info"][cmpu_id]["short"], "cmpu")
             self.failUnless("dyhb" in data)