Commit Graph

97 Commits

Author SHA1 Message Date
Jean-Baptiste Barth
f4feec4727 Fix timestamps in tests as Travis builds run on GMT time
When launched manually, tests should be launched with the environment
variable TZ=GMT. Maybe this could be useful to add that explicitly
somewhere in the README or in the Makefile.
2015-11-19 11:45:26 +01:00
Jean-Baptiste Barth
90c8797abd Implement heartbeat timeout on SWF activity tasks 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
f576f3765c Add SWF endpoint RecordActivityTaskHeartbeat 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
804d2e91b5 Improve workflow selection before raising a WorkflowExecutionAlreadyStartedFault 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
96d6bb056b Add SWF endpoint TerminateWorkflowExecution 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
98948a01c8 Add missing attributes in DescribeWorkflowExecution responses 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
fd12e317f8 Add SWF endpoint RespondActivityTaskFailed 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
c9e8ad03f8 Add SWF endpoint RespondActivityTaskCompleted 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
08643945df Add SWF endpoint CountPendingActivityTasks 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
761ab816f9 Add SWF endpoint PollForActivityTask 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
a0e484fa6d Move setup_workflow() test function in test utils 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
be71909a8c Rework task lists for activity/decision tasks 2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
eadc07bf61 Reorganize SWF tests so they're shorter and easier to use 2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
5e086223c2 Implement ScheduleActivityTask decision 2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
53630dc061 Add a Domain to WorkflowExecution objects
This will be needed later for finding an activity type for instance.
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
fa4608be98 Add basic ActivityTask model 2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
49e44c8ee6 Fix openDecisionTasks counter not updated when we complete a DecisionTask 2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
918cf8a4e3 Fix decision parameters: attributes are in foo*Decision*Attributes 2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
417f732b53 Implement FailWorkflowExecution decision 2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
558b84fb6a Add checks for *DecisionAttributes within RespondDecisionTaskCompleted 2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
0749b30fb4 Add some basic checks on SWF decisions, more to come later 2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
381eb5eb0f Implement CompleteWorkflowExecution decision 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
d97c770849 Add first version of SWF endpoint RespondDecisionTaskCompleted
There's just the structure for now, for now the workflow execution
doesn't know how to handle any decision type.
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
c72c198208 Fix WorkflowExecution event ids not increasing 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
a137e5c5c9 Add SWF endpoint CountPendingDecisionTasks 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
4e223d2318 Fix PollForDecisionTask not respecting requested task list 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
aa4adbb76e Implement reverseOrder option for GetWorkflowExecutionHistory and PollForDecisionTask 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
c16da9da2d Add SWF endpoint PollForDecisionTask and associated DecisionTask model 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
8d435d8afe Refactor SWF exceptions testing so responses tests get simpler 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
464aef293c Add SWF endpoint GetWorkflowExecutionHistory and associated HistoryEvent model 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
3ce5b29356 Handle WorkflowExecution/WorkflowType options inheritance
... and potential resulting DefaultUndefinedFault errors.
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
6a8636ad21 Remove unused import in SWF test 2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
2878252816 Add SWF endpoint: DescribeWorkflowExecution 2015-11-19 11:45:22 +01:00
Jean-Baptiste Barth
a589dc08b5 Make workflow_id a required property of WorkflowExecution
Given the response of DescribeWorkflowExecution endpoint, the
WorkflowExecution has to know about its own workflowId.
2015-11-19 11:45:22 +01:00
Jean-Baptiste Barth
c08c20d197 Move SWF Domain full dict representation to model 2015-11-19 11:45:22 +01:00
Jean-Baptiste Barth
92cf64c2ad Add SWF endpoint: StartWorkflowExecution 2015-11-19 11:45:22 +01:00
Jean-Baptiste Barth
33c478bc62 Move SWF Domain related tests with other models tests 2015-11-19 11:45:22 +01:00
Jean-Baptiste Barth
036ab194ba Add 'status' to SWF *Type string representation 2015-11-19 11:45:22 +01:00
Jean-Baptiste Barth
8b02c0b85e Move *Type __repr__ to GenericType 2015-11-19 11:45:22 +01:00
Jean-Baptiste Barth
5c02fcd94b Abstract away SWF *Type models logic into a GenericType class 2015-11-19 11:45:22 +01:00
Jean-Baptiste Barth
9483355584 Prepare SWF objects representations directly via json.dumps()
... instead of jinja2 templates that are absolutely not suited for this
purpose, and hard to test.
2015-11-19 11:45:21 +01:00
Jean-Baptiste Barth
c4e903706c Add SWF endpoints: RegisterWorkflowType, DeprecateWorkflowType, ListWorkflowTypes, DescribeWorkflowType 2015-11-19 11:45:21 +01:00
Jean-Baptiste Barth
b680b2ec3c Add SWF endpoints: RegisterActivityType, DeprecateActivityType, ListActivityType, DescribeActivityType 2015-11-19 11:45:21 +01:00
Jean-Baptiste Barth
cb46eac513 Implement naive reverseOrder option for SWF's ListDomains endpoint 2015-11-19 11:45:21 +01:00
Jean-Baptiste Barth
9440531d0c Move SWF domain related tests in their own file
It will simplify other objects integration
2015-11-19 11:45:21 +01:00
Jean-Baptiste Barth
5392978eaf Check parameters are strings on SWF endpoints
SWF endpoints raise a 400 Bad Request for non-string types, and boto
doesn't enforce it as of today, so better have some safety nets in moto
to avoid this common mistake.

Example exception raised by Boto:

    SWFResponseError: SWFResponseError: 400 Bad Request
    {u'Message': u'class java.lang.Short can not be converted to an String',
    u'__type': u'com.amazon.coral.service#SerializationException'}
2015-11-19 11:45:21 +01:00
Jean-Baptiste Barth
8e3fd6c7de Add SWF endpoints: RegisterDomain, DeprecateDomain, ListDomains, DescribeDomain 2015-11-19 11:45:20 +01:00