def test03_make_echo_with_collector(self): """ Test with correct handler used in the package. - Get the request from server - Sending the same response """ clock = Clock() sessions = Sessions(False, 10, clock) trigger = DummyTrigger() factory = GatheringFactory() collector = Collector(sessions) factory.protocol.set_handler(collector) factory.protocol.set_trigger(trigger) protocol = factory.buildProtocol(("127.0.0.1", 0)) transport = StringTransport() protocol.makeConnection(transport) protocol.dataReceived("hello") uid, ip, data = collector.get() collector.release(uid, data) self.assertEqual(transport.value(), "hello")
def test02_add_and_release(self): """ - Add an element and get its deferred (as my_deferred) - Add another elements - Because this is a first element, first get() returns its uid -> Release an element with our uid, we get the same deferred """ collector = Collector(self.sessions) any_data = "any data" my_deferred = collector.queue_and_process("192.168.45.12", any_data) for i in xrange(10): collector.queue_and_process("192.168.127.22", "%s_%d" % (any_data, i)) uid, ip, request = collector.get() d = collector.release(uid, "any result") self.assertTrue(my_deferred is d)