Exemplo n.º 1
0
    def test_runOperation(self):
        """
        You can run a query
        """
        mock = MagicMock()
        mock.runOperation = MagicMock(return_value=defer.succeed('success'))

        pool = ConnectionPool()
        pool.add(mock)

        d = pool.runOperation('my query')
        self.assertEqual(self.successResultOf(d), 'success')
        mock.runOperation.assert_called_once_with('my query')
Exemplo n.º 2
0
    def test_returnToPool(self):
        """
        After a successful query, interaction or operation, the connection
        should be returned to the pool
        """
        mock = MagicMock()
        mock.runInteraction = MagicMock(return_value=defer.fail(Exception('foo')))
        mock.runQuery = MagicMock(return_value=defer.succeed('something'))
        mock.runOperation = MagicMock(return_value=defer.succeed('success'))

        pool = ConnectionPool()
        pool.add(mock)

        d = pool.runQuery('query')
        self.assertEqual(self.successResultOf(d), 'something')
        d = pool.runOperation('operation')
        self.assertEqual(self.successResultOf(d), 'success')
        d = pool.runInteraction('interaction')
        self.assertIsInstance(self.failureResultOf(d).value, Exception)