def test_process_step_no_units(self, mock_get_units): self.publisher.repo.content_unit_counts = {'FOO_TYPE': 0} mock_method = Mock() mock_get_units.return_value = [] step = UnitPublishStep('foo_step', 'FOO_TYPE') step.parent = self.publisher step.process_unit = mock_method step.process() self.assertEquals(step.state, reporting_constants.STATE_COMPLETE) self.assertFalse(mock_method.called)
def test_process_step_cancelled_mid_unit_processing(self, mock_get_units): self.publisher.repo.content_unit_counts = {'FOO_TYPE': 2} mock_get_units.return_value = ['cancel', 'bar_unit'] step = UnitPublishStep('foo_step', 'FOO_TYPE') self.publisher.add_child(step) step.process_unit = self._step_canceler step.process() self.assertEquals(step.state, reporting_constants.STATE_CANCELLED) self.assertEquals(step.progress_successes, 1) self.assertEquals(step.progress_failures, 0) self.assertEquals(step.total_units, 2)
def test_process_step_single_unit(self, mock_get_units): self.publisher.repo.content_unit_counts = {'FOO_TYPE': 1} mock_method = Mock() mock_get_units.return_value = ['mock_unit'] step = UnitPublishStep('foo_step', 'FOO_TYPE') step.parent = self.publisher step.process_unit = mock_method step.process() self.assertEquals(step.state, reporting_constants.STATE_COMPLETE) self.assertEquals(step.progress_successes, 1) self.assertEquals(step.progress_failures, 0) self.assertEquals(step.total_units, 1) mock_method.assert_called_once_with('mock_unit')
def test_process_step_skip_units(self): self.publisher.config = PluginCallConfiguration(None, {'skip': ['FOO']}) step = UnitPublishStep('foo_step', 'FOO') step.parent = self.publisher step.process() self.assertEquals(step.state, reporting_constants.STATE_SKIPPED)