Ejemplo n.º 1
0
    def test_detach_not_attached(self, model):
        descriptor = Mock(main=Mock(threads=4))

        # test
        plugin = Plugin(descriptor, '')
        plugin.detach()

        # validation
        self.assertFalse(model.called)
Ejemplo n.º 2
0
    def test_detach_not_attached(self, model):
        descriptor = Mock(main=Mock(threads=4))

        # test
        plugin = Plugin(descriptor, '')
        plugin.detach()

        # validation
        self.assertFalse(model.called)
Ejemplo n.º 3
0
    def test_detach_no_teardown(self, model):
        descriptor = Mock(main=Mock(threads=4))
        consumer = Mock()

        # test
        plugin = Plugin(descriptor, '')
        plugin.consumer = consumer
        plugin.detach(teardown=False)

        # validation
        consumer.shutdown.assert_called_once_with()
        consumer.join.assert_called_once_with()
        self.assertFalse(model.teardown.called)
        self.assertEqual(plugin.consumer, None)
Ejemplo n.º 4
0
    def test_detach_no_teardown(self, model):
        descriptor = Mock(main=Mock(threads=4))
        consumer = Mock()

        # test
        plugin = Plugin(descriptor, '')
        plugin.consumer = consumer
        plugin.detach(teardown=False)

        # validation
        consumer.shutdown.assert_called_once_with()
        consumer.join.assert_called_once_with()
        self.assertFalse(model.teardown.called)
        self.assertEqual(plugin.consumer, None)
Ejemplo n.º 5
0
    def test_detach(self, model):
        descriptor = Mock(main=Mock(threads=4))
        consumer = Mock()

        # test
        plugin = Plugin(descriptor, '')
        plugin.consumer = consumer
        plugin.detach()

        # validation
        consumer.shutdown.assert_called_once_with()
        consumer.join.assert_called_once_with()
        model.assert_called_with(plugin)
        model = model.return_value
        model.teardown.assert_called_once_with()
        self.assertEqual(plugin.consumer, None)
Ejemplo n.º 6
0
    def test_detach(self, model):
        descriptor = Mock(main=Mock(threads=4))
        consumer = Mock()

        # test
        plugin = Plugin(descriptor, '')
        plugin.consumer = consumer
        plugin.detach()

        # validation
        consumer.shutdown.assert_called_once_with()
        consumer.join.assert_called_once_with()
        model.assert_called_with(plugin)
        model = model.return_value
        model.teardown.assert_called_once_with()
        self.assertEqual(plugin.consumer, None)
Ejemplo n.º 7
0
    def test_shutdown_not_running(self, pool, scheduler):
        descriptor = Mock(main=Mock(threads=4))
        scheduler.return_value.isAlive.return_value = False

        # test
        plugin = Plugin(descriptor, '')
        plugin.detach = Mock()
        plugin.shutdown(False)

        # validation
        self.assertFalse(plugin.detach.called)
        self.assertFalse(scheduler.return_value.shutdown.called)
        self.assertFalse(scheduler.return_value.join.called)
        self.assertFalse(pool.return_value.shutdown.called)
Ejemplo n.º 8
0
    def test_shutdown(self, pool, scheduler):
        descriptor = Mock(main=Mock(threads=4))
        scheduler.return_value.isAlive.return_value = True

        # test
        plugin = Plugin(descriptor, '')
        plugin.detach = Mock()
        plugin.shutdown(False)

        # validation
        plugin.detach.assert_called_once_with(False)
        scheduler.return_value.shutdown.assert_called_once_with()
        scheduler.return_value.join.assert_called_once_with()
        pool.return_value.shutdown.assert_called_once_with(hard=False)
Ejemplo n.º 9
0
    def test_shutdown_not_running(self, pool, scheduler):
        descriptor = Mock(main=Mock(threads=4))
        scheduler.return_value.isAlive.return_value = False

        # test
        plugin = Plugin(descriptor, '')
        plugin.detach = Mock()
        plugin.shutdown(False)

        # validation
        self.assertFalse(plugin.detach.called)
        self.assertFalse(scheduler.return_value.shutdown.called)
        self.assertFalse(scheduler.return_value.join.called)
        self.assertFalse(pool.return_value.shutdown.called)
Ejemplo n.º 10
0
    def test_shutdown(self, pool, scheduler):
        descriptor = Mock(main=Mock(threads=4))
        scheduler.return_value.isAlive.return_value = True

        # test
        plugin = Plugin(descriptor, '')
        plugin.detach = Mock()
        plugin.shutdown(False)

        # validation
        plugin.detach.assert_called_once_with(False)
        scheduler.return_value.shutdown.assert_called_once_with()
        scheduler.return_value.join.assert_called_once_with()
        pool.return_value.shutdown.assert_called_once_with()
Ejemplo n.º 11
0
    def test_attach(self, pool, model, consumer, node):
        queue = 'test'
        descriptor = Mock(main=Mock(threads=4))
        pool.return_value.run.side_effect = lambda fn: fn()
        model.return_value.queue = queue

        # test
        plugin = Plugin(descriptor, '')
        plugin.authenticator = Mock()
        plugin.detach = Mock()
        plugin.refresh = Mock()
        plugin.attach()

        # validation
        plugin.detach.assert_called_once_with(False)
        model.assert_called_with(plugin)
        model.return_value.setup.assert_called_once_with()
        node.assert_called_once_with(queue)
        consumer.assert_called_once_with(node.return_value, plugin)
        consumer = consumer.return_value
        consumer.start.assert_called_once_with()
        self.assertEqual(consumer.authenticator, plugin.authenticator)
        self.assertEqual(plugin.consumer, consumer)
Ejemplo n.º 12
0
    def test_attach(self, pool, model, consumer, node):
        queue = 'test'
        descriptor = Mock(main=Mock(threads=4))
        pool.return_value.run.side_effect = lambda fn: fn()
        model.return_value.queue = queue

        # test
        plugin = Plugin(descriptor, '')
        plugin.authenticator = Mock()
        plugin.detach = Mock()
        plugin.refresh = Mock()
        plugin.attach()

        # validation
        plugin.detach.assert_called_once_with(False)
        model.assert_called_with(plugin)
        model.return_value.setup.assert_called_once_with()
        node.assert_called_once_with(queue)
        consumer.assert_called_once_with(node.return_value, plugin)
        consumer = consumer.return_value
        consumer.start.assert_called_once_with()
        self.assertEqual(consumer.authenticator, plugin.authenticator)
        self.assertEqual(plugin.consumer, consumer)