Example #1
0
class TimingOutCQLClientTests(SynchronousTestCase):
    """
    Tests for `:py:class:TimingOutCQLClient`
    """

    def setUp(self):
        """
        Sample client and clock
        """
        self.client = mock.Mock(spec=['execute', 'disconnect'])
        self.clock = Clock()
        self.tclient = TimingOutCQLClient(self.clock, self.client, 10)

    def test_execute(self):
        """
        Execute is delgated to the client
        """
        self.client.execute.return_value = defer.succeed(5)
        d = self.tclient.execute(2, 3, a=4)
        self.assertEqual(self.successResultOf(d), 5)
        self.client.execute.assert_called_once_with(2, 3, a=4)

    def test_disconnect(self):
        """
        `disconnect()` is delgated to the client
        """
        self.client.disconnect.return_value = defer.succeed(5)
        d = self.tclient.disconnect()
        self.assertEqual(self.successResultOf(d), 5)
        self.client.disconnect.assert_called_once_with()

    def test_times_out(self):
        """
        Execute times out after given time
        """
        self.client.execute.return_value = defer.Deferred()
        d = self.tclient.execute(2, 3)
        self.assertNoResult(d)
        self.clock.advance(10)
        self.failureResultOf(d, TimedOutError)
Example #2
0
class TimingOutCQLClientTests(SynchronousTestCase):
    """
    Tests for `:py:class:TimingOutCQLClient`
    """
    def setUp(self):
        """
        Sample client and clock
        """
        self.client = mock.Mock(spec=['execute', 'disconnect'])
        self.clock = Clock()
        self.tclient = TimingOutCQLClient(self.clock, self.client, 10)

    def test_execute(self):
        """
        Execute is delgated to the client
        """
        self.client.execute.return_value = defer.succeed(5)
        d = self.tclient.execute(2, 3, a=4)
        self.assertEqual(self.successResultOf(d), 5)
        self.client.execute.assert_called_once_with(2, 3, a=4)

    def test_disconnect(self):
        """
        `disconnect()` is delgated to the client
        """
        self.client.disconnect.return_value = defer.succeed(5)
        d = self.tclient.disconnect()
        self.assertEqual(self.successResultOf(d), 5)
        self.client.disconnect.assert_called_once_with()

    def test_times_out(self):
        """
        Execute times out after given time
        """
        self.client.execute.return_value = defer.Deferred()
        d = self.tclient.execute(2, 3)
        self.assertNoResult(d)
        self.clock.advance(10)
        self.failureResultOf(d, TimedOutError)