def test_stage_from_dict(self, mocked_init): d = { 'uid': 're.Stage.0000', 'name': 's1', 'state': states.DONE, 'state_history': [states.INITIAL, states.DONE], 'parent_pipeline': { 'uid': 'p1', 'name': 'pipe1' } } s = Stage() s._uid = None s._name = None s._state = None s._state_history = None s._p_pipeline = None s.from_dict(d) self.assertEqual(s._uid, d['uid']) self.assertEqual(s._name, d['name']) self.assertEqual(s._state, d['state']) self.assertEqual(s._state_history, d['state_history']) self.assertEqual(s._p_pipeline, d['parent_pipeline'])
def test_stage_state_assignment(self, mocked_init, t, l, i, b): s = Stage() s._uid = 'test_stage' data_type = [l, i, b] for data in data_type: with self.assertRaises(TypeError): s.state = data if isinstance(t, str): with self.assertRaises(ValueError): s.state = t s = Stage() s._uid = 'test_stage' s._state = None s._state_history = list() state_history = list() states_list = list(states._stage_state_values.keys()) shuffle(states_list) for val in states_list: s.state = val if val != states.SUSPENDED: state_history.append(val) self.assertEqual(s._state, val) self.assertEqual(s._state_history, state_history)
def test_stage_to_dict(self, mocked_init): s = Stage() s._uid = 'stage.0000' s._name = 'test_stage' s._state = states.INITIAL s._state_history = [states.INITIAL] s._p_pipeline = {'uid': 'pipeline.0000', 'name': 'parent'} self.assertEqual( s.to_dict(), { 'uid': 'stage.0000', 'name': 'test_stage', 'state': states.INITIAL, 'state_history': [states.INITIAL], 'parent_pipeline': { 'uid': 'pipeline.0000', 'name': 'parent' } })