def test_detach_not_attached(self, model): descriptor = Mock(main=Mock(threads=4)) # test plugin = Plugin(descriptor, '') plugin.detach() # validation self.assertFalse(model.called)
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)
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)
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)
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)
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()
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)