Пример #1
0
 def test_reregister(self):
     with rpc.context(self.rpcA):
         stubA = pickle.dumps(rpc.register(self.dummy))
     with rpc.context(self.rpcA):
         stubA = pickle.loads(stubA)
         stubB = rpc.register(stubA)
     self.assertIs(stubA, stubB)
Пример #2
0
 def test_blob(self):
     with rpc.context(self.rpcA):
         stub = rpc.register(self.dummy_readblob)
         stub_dump = pickle.dumps(stub, pickle.HIGHEST_PROTOCOL)
         
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub_dump)
         actual = yield stub(blob=blob.StringBlob("Hello World!"))
     self.assertEqual("Hello World!", actual)
Пример #3
0
 def test_kwargs(self):
     with rpc.context(self.rpcA):
         stub = rpc.register(self.dummy_arg)
         stub_dump = pickle.dumps(stub, pickle.HIGHEST_PROTOCOL)
         
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub_dump)
         actual = yield stub(arg="Hello")
     self.assertEqual("Hello", actual)
Пример #4
0
 def test_call(self):
     with rpc.context(self.rpcA):
         stub = rpc.register(self.dummy)
         stub_dump = pickle.dumps(stub, pickle.HIGHEST_PROTOCOL)
         
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub_dump)
         actual = yield stub()
     self.assertEqual(42, actual)
Пример #5
0
 def test_return_blob(self):
     with rpc.context(self.rpcA):
         stub = rpc.register(self.dummy_writeblob)
         stub_dump = pickle.dumps(stub, pickle.HIGHEST_PROTOCOL)
         
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub_dump)
         returned_blob = yield stub("Hello World!")
         
     actual = yield returned_blob.read_all()
     self.assertEqual("Hello World!", actual)
Пример #6
0
 def test_param_picklefail(self):
     with rpc.context(self.rpcA):
         stub = pickle.dumps(rpc.register(self.dummy_devnull))
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub)
     try:
         yield stub(type(None))
     except:
         pass # expected
     else:
         self.fail("Expected exception")
Пример #7
0
 def test_retval_picklefail(self):
     with rpc.context(self.rpcA):
         stub = pickle.dumps(rpc.register(self.dummy_picklefail))
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub)
     try:
         yield stub()
     except:
         pass # expected
     else:
         self.fail("Expected exception")
Пример #8
0
 def test_echo_blob(self):
     datalist = ["Hello World!"]*(100*1024)
     
     with rpc.context(self.rpcA):
         stub = rpc.register(self.dummy_echoblob)
         stub_dump = pickle.dumps(stub, pickle.HIGHEST_PROTOCOL)
         
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub_dump)
         returned_blob = yield stub(blob=blob.StringListBlob(datalist))
         
     actual = yield returned_blob.read_all()
     self.assertEqual("Hello World!"*(100*1024), actual)
Пример #9
0
 def test_slow_sender(self):
     datablocks = ["."*(8*1024)]*1024
     
     src = blob.StringListBlob(datablocks)
     src = blob.ThrottleBlob(src, 2*1024*1024)
     
     with rpc.context(self.rpcA):
         stub = rpc.register(self.dummy_readblob)
         stub_dump = pickle.dumps(stub, pickle.HIGHEST_PROTOCOL)
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub_dump)
         
     actual = yield stub(blob=src)
     self.assertEqual('.'*(8*1024*1024), actual)
     self.assertTrue(src.max_buffer_size() <= 8*1024)
Пример #10
0
 def test_slow_receiver(self):
     datablocks = ["."*(8*1024)]*1024
     
     src = blob.StringListBlob(datablocks)
     src = blob.MeasureBlob(src)
     
     
     with rpc.context(self.rpcA):
         stub = rpc.register(self.dummy_echoblob)
         stub_dump = pickle.dumps(stub, pickle.HIGHEST_PROTOCOL)
     with rpc.context(self.rpcB):
         stub = pickle.loads(stub_dump)
         
     returned_blob = yield stub(blob=src)
     slow_blob = blob.ThrottleBlob(returned_blob, 2*1024*1024)
     actual = yield slow_blob.read_all()
     
     self.assertTrue(src.throughput < 4*1024*1024,
                      "Sender's throughput not throttled: %s Mbs" % 
                      (src.throughput/1024.0/1024.0))
     
     self.assertEqual('.'*(8*1024*1024), actual)