def test_delete_calls_delete_on_protocol(self): protocol = pretend.stub( delete=pretend.call_recorder(lambda key: succeed(True)), transport=pretend.stub(loseConnection=lambda: None)) endpoint = pretend.stub(connect=lambda factory: succeed(protocol)) cache = MemcachedCache(endpoint) d = cache.delete('foo') self.successResultOf(d) self.assertEqual(protocol.delete.calls, [pretend.call('foo')])
def test_delete_calls_delete_on_protocol(self): protocol = pretend.stub( delete=pretend.call_recorder(lambda key: succeed(True)), transport=pretend.stub(loseConnection=lambda: None) ) endpoint = pretend.stub( connect=lambda factory: succeed(protocol) ) cache = MemcachedCache(endpoint) d = cache.delete('foo') self.successResultOf(d) self.assertEqual(protocol.delete.calls, [pretend.call('foo')])
def test_delete_loses_connection_after_delete_fires(self): d = Deferred() protocol = pretend.stub( delete=lambda key: d, transport=pretend.stub( loseConnection=pretend.call_recorder(lambda: None))) endpoint = pretend.stub(connect=lambda factory: succeed(protocol)) cache = MemcachedCache(endpoint) d2 = cache.delete('foo') self.assertNoResult(d2) self.assertEqual(protocol.transport.loseConnection.calls, []) d.callback(True) self.assertEqual(protocol.transport.loseConnection.calls, [pretend.call()])
def test_delete_connects_to_endpoint(self): protocol = pretend.stub( delete=lambda key: succeed(True), transport=pretend.stub(loseConnection=lambda: None)) endpoint = pretend.stub( connect=pretend.call_recorder(lambda factory: succeed(protocol))) cache = MemcachedCache(endpoint) d = cache.delete('foo') self.successResultOf(d) self.assertEqual(len(endpoint.connect.calls), 1) factory = endpoint.connect.calls[0].args[0] self.assertIsInstance(factory, Factory) self.assertIs(factory.protocol, MemCacheProtocol)
def test_delete_connects_to_endpoint(self): protocol = pretend.stub( delete=lambda key: succeed(True), transport=pretend.stub(loseConnection=lambda: None) ) endpoint = pretend.stub( connect=pretend.call_recorder(lambda factory: succeed(protocol)) ) cache = MemcachedCache(endpoint) d = cache.delete('foo') self.successResultOf(d) self.assertEqual(len(endpoint.connect.calls), 1) factory = endpoint.connect.calls[0].args[0] self.assertIsInstance(factory, Factory) self.assertIs(factory.protocol, MemCacheProtocol)
def test_delete_loses_connection_after_delete_fires(self): d = Deferred() protocol = pretend.stub( delete=lambda key: d, transport=pretend.stub( loseConnection=pretend.call_recorder(lambda: None) ) ) endpoint = pretend.stub( connect=lambda factory: succeed(protocol) ) cache = MemcachedCache(endpoint) d2 = cache.delete('foo') self.assertNoResult(d2) self.assertEqual(protocol.transport.loseConnection.calls, []) d.callback(True) self.assertEqual( protocol.transport.loseConnection.calls, [pretend.call()] )