def test_non_deterministic(self): event = HistoryEvent(event_type=EventType.ActivityTaskCompleted) attr = ActivityTaskCompletedEventAttributes() attr.scheduled_event_id = 9999 event.activity_task_completed_event_attributes = attr with self.assertRaises(NonDeterministicWorkflowException): self.context.handle_activity_task_completed(event) self.assertFalse(self.future.done())
def test_handle_activity_task_completed(self): event = HistoryEvent(event_type=EventType.ActivityTaskCompleted) attr = ActivityTaskCompletedEventAttributes() self.payload = {"name": "bob"} attr.scheduled_event_id = 20 attr.result = bytes(json.dumps(self.payload), "utf-8") event.activity_task_completed_event_attributes = attr self.context.handle_activity_task_completed(event) self.assertTrue(self.future.done()) result = self.future.result() self.assertIs(attr.result, result) self.assertEqual(0, len(self.context.scheduled_activities))