def test_stage_validate_entities(t, l, i, b, se): s = Stage() data_type = [t, l, i, b, se] for data in data_type: with pytest.raises(TypeError): s._validate_entities(data) t = Task() assert isinstance(s._validate_entities(t), set) t1 = Task() t2 = Task() assert set([t1, t2]) == s._validate_entities([t1, t2])
def test_stage_validate_entities(self, mocked_init, t, l, i, b, se): s = Stage() data_type = [t, l, i, b, se] for data in data_type: with self.assertRaises(TypeError): s._validate_entities(data) t = mock.MagicMock(spec=Task) self.assertIsInstance(s._validate_entities(t), set) t1 = mock.MagicMock(spec=Task) t2 = mock.MagicMock(spec=Task) self.assertEqual(set([t1, t2]), s._validate_entities([t1, t2]))
def test_stage_task_assignment(self, mocked_init): """ ***Purpose***: Test if necessary attributes are automatically updates upon task assignment """ global_tasks = set() # ------------------------------------------------------------------------------ # def _validate_entities_side_effect(things): nonlocal global_tasks global_tasks.add(things) return global_tasks s = Stage() s._validate_entities = mock.MagicMock( side_effect=_validate_entities_side_effect) t = mock.MagicMock(spec=Task) s.tasks = t self.assertIsInstance(s.tasks, set) self.assertEqual(s._task_count, 1) self.assertIn(t, s.tasks)