def test_run_unactions_should_wait_for_the_process(self): actions = [{'initial': 1}, {'middle': 2}, {'final': 3}] run_task_unactions('test', actions) self._initial_stream_mock.close.assert_called_once() self._middle_stream_mock.wait.assert_called_once()
def test_run_unactions_should_kill_process_if_action_raises(self): actions = [{'ifailure': 1}, {'middle': 2}, {'final': 3}] with self.assertRaises(Exception): run_task_unactions('test', actions) self._middle_stream_mock.send_signal.assert_called_once()
def test_run_unactions_should_fail_if_process_fails(self): actions = [{'initial': 1}, {'middle': 2}, {'final': 3}] self._middle_stream_mock.wait.return_value = 1 with self.assertRaises(Exception): run_task_unactions('test', actions) self._middle_stream_mock.stderr.__iter__.assert_called()
def test_run_unactions_with_unexisting_action_should_fail(self): actions = [{'nope': None}] with self.assertRaises(KeyError): run_task_unactions('test', actions)
def test_run_unactions_with_action_failing_should_raise_the_exception( self): actions = [{'ffailure': 1}] with self.assertRaisesRegex(KeyError, r'f'): run_task_unactions('test', actions)
def test_run_unactions_with_action_without_unaction_should_fail(self): actions = [{'initial-with-no-unaction': 1}] with self.assertRaises(Exception): run_task_unactions('test', actions)
def test_run_unactions_with_incompatible_action_should_fail(self): actions = [{'initial': 1}] with self.assertRaises(Exception): run_task_unactions('test', actions)
def test_run_unactions_should_work(self): actions = [{'final': 1}] run_task_unactions('test', actions)
def test_run_unactions_should_work(self): run_task_unactions('test', [])
def test_run_unactions_should_work_2(self): actions = [{'initial': 1}, {'middle': 2}, {'final': 3}] run_task_unactions('test', actions)
def test_run_unactions_with_bad_action_should_fail(self): actions = [{'bad': ':(', 'final': ':(('}] with self.assertRaises(Exception): run_task_unactions('test', actions)
def test_run_unactions_with_action_failing_should_raise_the_exception( self): actions = [{'initial': 1}, {'ffailure': 2}] with self.assertRaises(KeyError): run_task_unactions('test', actions)
def test_run_unactions_should_dispose_streams(self): actions = [{'initial': 1}, {'final': 2}] run_task_unactions('test', actions) self._initial_stream_mock.close.assert_called_once()