Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: move TaskState object out of Task object #178

Merged
merged 1 commit into from
May 3, 2022
Merged

refactor: move TaskState object out of Task object #178

merged 1 commit into from
May 3, 2022

Conversation

a358003542
Copy link
Contributor

ref issue #176 .

@a358003542
Copy link
Contributor Author

before refactor:

!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testConstructor (BpmnWorkflowSerializer.Constructor)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testSerializeJson (BpmnWorkflowSerializer.serialize_json)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testDeserializeJson (BpmnWorkflowSerializer.deserialize_json)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testGetVersion (BpmnWorkflowSerializer.get_version)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testWorkflowToDict (BpmnWorkflowSerializer.workflow_to_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testWorkflowFromDict (BpmnWorkflowSerializer.workflow_from_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testTaskToDict (BpmnWorkflowSerializer.task_to_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testTaskFromDict (BpmnWorkflowSerializer.task_from_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testTaskTreeToDict (BpmnWorkflowSerializer.task_tree_to_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testTaskTreeFromDict (BpmnWorkflowSerializer.task_tree_from_dict)
!!!! WARNING: Untested method: CamundaExtensionsTest.testConstructor (UserTaskParser.Constructor)
!!!! WARNING: Untested method: CamundaExtensionsTest.testCreateTask (UserTaskParser.create_task)
!!!! WARNING: Untested method: CamundaExtensionsTest.testGetForm (UserTaskParser.get_form)
!!!! WARNING: Untested method: CamundaExtensionsTest.testGetEnumField (UserTaskParser.get_enum_field)
Error: Untested methods found.

after refactor:

!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testConstructor (BpmnWorkflowSerializer.Constructor)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testSerializeJson (BpmnWorkflowSerializer.serialize_json)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testDeserializeJson (BpmnWorkflowSerializer.deserialize_json)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testGetVersion (BpmnWorkflowSerializer.get_version)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testWorkflowToDict (BpmnWorkflowSerializer.workflow_to_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testWorkflowFromDict (BpmnWorkflowSerializer.workflow_from_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testTaskToDict (BpmnWorkflowSerializer.task_to_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testTaskFromDict (BpmnWorkflowSerializer.task_from_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testTaskTreeToDict (BpmnWorkflowSerializer.task_tree_to_dict)
!!!! WARNING: Untested method: BpmnWorkflowSerializerTest.testTaskTreeFromDict (BpmnWorkflowSerializer.task_tree_from_dict)
!!!! WARNING: Untested method: CamundaExtensionsTest.testConstructor (UserTaskParser.Constructor)
!!!! WARNING: Untested method: CamundaExtensionsTest.testCreateTask (UserTaskParser.create_task)
!!!! WARNING: Untested method: CamundaExtensionsTest.testGetForm (UserTaskParser.get_form)
!!!! WARNING: Untested method: CamundaExtensionsTest.testGetEnumField (UserTaskParser.get_enum_field)
Error: Untested methods found.

@a358003542
Copy link
Contributor Author

a358003542 commented Apr 23, 2022

before refactor:

testTutorial (docTest.Tutorial1Test) ... ok
testTutorial (docTest.Tutorial2Test) ... ok
testWorkflowSpec (PatternTest.PatternTest) ... FAIL
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\acyclic_synchronizing_merge.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\arbitrary_cycles.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\blocking_discriminator.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\blocking_partial_join.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\cancelling_discriminator.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\cancelling_partial_join.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\cancelling_partial_join_for_multi_instance.xml
................................................

Traceback (most recent call last):
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\serializer\baseTest.py", line 86, in testWorkflowSpec
    self._test_workflow_spec(test)
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\serializer\baseTest.py", line 61, in _test_workflow_spec
    workflow = run_workflow(self, test.spec, test.path, test.data)
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\..\..\tests\SpiffWorkflow\util.py", line 109, in run_workflow
    test.assertEqual(taken_path, expected_path)
AssertionError: 'Star[92 chars]n    join_2\n      last\n        End\n      join_1\n' != 'Star[92 chars]n      join_1\n        join_2\n          last\[14 chars]nd\n'
  Start
    add_instance_1
    multi_instance_1
      task_g1
      task_g2
      task_g1
      task_g2
-     join_2
-       last
-         End
        join_1
+         join_2
+           last
+             End


======================================================================
FAIL: test_Merge_data_merging (specs.MergeTest.MergeTest)
Test that Merge task actually merges data
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\serializer\..\specs\MergeTest.py", line 68, in test_Merge_data_merging
    self.assertIn('second', task.data)
AssertionError: 'second' not found in {'name': 'Start', 'simple 1': 1, 'merge 1': 1, 'first': 1, 'Start': 1}

======================================================================
FAIL: testSerialize (specs.WorkflowSpecTest.WorkflowSpecTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\serializer\..\specs\WorkflowSpecTest.py", line 92, in testSerialize
    self.doPickleSingle(workflow, expected_path)
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\serializer\..\specs\WorkflowSpecTest.py", line 78, in doPickleSingle
    self.assertEqual(expected_path, taken_path)
AssertionError: Lists differ: ['Sta[881 chars]     multi_instance_1', '                     [425 chars]_f3'] != ['Sta[881 chars]     return_to_excl_choice_1', '        excl_c[1259 chars]_f3']

First differing element 29:
'                            multi_instance_1'
'                            return_to_excl_choice_1'

Second list contains 24 additional elements.
First extra element 41:
'                            return_to_excl_choice_1'

Diff is 2391 characters long. Set self.maxDiff to None to see it.

----------------------------------------------------------------------
Ran 454 tests in 24.702s

FAILED (failures=11, skipped=2)

Process finished with exit code 1

after refactor:

testTutorial (docTest.Tutorial1Test) ... ok
testTutorial (docTest.Tutorial2Test) ... ok
testWorkflowSpec (PatternTest.PatternTest) ... D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\acyclic_synchronizing_merge.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\arbitrary_cycles.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\blocking_discriminator.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\blocking_partial_join.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\cancelling_discriminator.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\cancelling_partial_join.xml
D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\data/spiff/control-flow\cancelling_partial_join_for_multi_instance.xml
...................................



======================================================================
FAIL: test_Merge_data_merging (specs.MergeTest.MergeTest)
Test that Merge task actually merges data
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\serializer\..\specs\MergeTest.py", line 68, in test_Merge_data_merging
    self.assertIn('second', task.data)
AssertionError: 'second' not found in {'name': 'Start', 'simple 1': 1, 'merge 1': 1, 'first': 1, 'Start': 1}

======================================================================
FAIL: testSerialize (specs.WorkflowSpecTest.WorkflowSpecTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\serializer\..\specs\WorkflowSpecTest.py", line 92, in testSerialize
    self.doPickleSingle(workflow, expected_path)
  File "D:\SourceCode\backup\SpiffWorkflow\tests\SpiffWorkflow\serializer\..\specs\WorkflowSpecTest.py", line 78, in doPickleSingle
    self.assertEqual(expected_path, taken_path)
AssertionError: Lists differ: ['Sta[881 chars]     multi_instance_1', '                     [425 chars]_f3'] != ['Sta[881 chars]     return_to_excl_choice_1', '        excl_c[2093 chars]_f3']

First differing element 29:
'                            multi_instance_1'
'                            return_to_excl_choice_1'

Second list contains 48 additional elements.
First extra element 41:
'                            return_to_excl_choice_1'

Diff is 3297 characters long. Set self.maxDiff to None to see it.

----------------------------------------------------------------------
Ran 454 tests in 27.521s

FAILED (failures=11, skipped=2)
TAKEN:    Start
EXPECTED: Start
TAKEN:      task_a1
EXPECTED:   task_a1
TAKEN:        task_a2
EXPECTED:     task_a2
TAKEN:      task_b1
EXPECTED:   task_b1
TAKEN:        task_b2
EXPECTED:     task_b2
TAKEN:          synch_1
EXPECTED:       synch_1
TAKEN:            excl_choice_1
EXPECTED:         excl_choice_1
TAKEN:              task_c1
EXPECTED:           task_c1
TAKEN:                excl_choice_2
EXPECTED:             excl_choice_2
TAKEN:                  task_d3
EXPECTED:               task_d3
TAKEN:                    multi_choice_1
EXPECTED:                 multi_choice_1
TAKEN:                      task_e1
EXPECTED:                   task_e1
TAKEN:                      task_e3
EXPECTED:                   task_e3
TAKEN:                        struct_synch_merge_1
EXPECTED:                     struct_synch_merge_1
TAKEN:                          task_f1
EXPECTED:                       task_f1
TAKEN:                            struct_discriminator_1
EXPECTED:                         struct_discriminator_1
TAKEN:                              excl_choice_3
EXPECTED:                           excl_choice_3
TAKEN:                                return_to_excl_choice_1
EXPECTED:                             return_to_excl_choice_1
TAKEN:            excl_choice_1
EXPECTED:         excl_choice_1
TAKEN:              task_c1
EXPECTED:           task_c1
TAKEN:                excl_choice_2
EXPECTED:             excl_choice_2
TAKEN:                  task_d3
EXPECTED:               task_d3
TAKEN:                    multi_choice_1
EXPECTED:                 multi_choice_1
TAKEN:                      task_e1
EXPECTED:                   task_e1
TAKEN:                      task_e3
EXPECTED:                   task_e3
TAKEN:                        struct_synch_merge_1
EXPECTED:                     struct_synch_merge_1
TAKEN:                          task_f1
EXPECTED:                       task_f1
TAKEN:                            struct_discriminator_1
EXPECTED:                         struct_discriminator_1
TAKEN:                              excl_choice_3
EXPECTED:                           excl_choice_3
TAKEN:                                return_to_excl_choice_1
EXPECTED:                             multi_instance_1
TAKEN:            excl_choice_1
EXPECTED:                               task_g1
TAKEN:              task_c1
EXPECTED:                               task_g2
TAKEN:                excl_choice_2
EXPECTED:                               task_g1
TAKEN:                  task_d3
EXPECTED:                               task_g2
TAKEN:                    multi_choice_1
EXPECTED:                               task_g1
TAKEN:                      task_e1
EXPECTED:                               task_g2
TAKEN:                      task_e3
EXPECTED:                                 struct_synch_merge_2
TAKEN:                        struct_synch_merge_1
EXPECTED:                                   last
TAKEN:                          task_f1
EXPECTED:                                     End
TAKEN:                            struct_discriminator_1
EXPECTED:                       task_f2
TAKEN:                              excl_choice_3
EXPECTED:                       task_f3

Process finished with exit code 1

@danfunk
Copy link
Collaborator

danfunk commented Apr 25, 2022

I see from the comments that the tests were bothering you. Please note that the tests are all passing. You, very sensibly, used the old run_suite.py which we should have removed/updated a long time ago.

@danfunk
Copy link
Collaborator

danfunk commented Apr 25, 2022

Out of curiosity, what version of python are you using?

@a358003542
Copy link
Contributor Author

a358003542 commented Apr 25, 2022 via email

@danfunk
Copy link
Collaborator

danfunk commented May 2, 2022

Haven't forgotten about this, just want time to test against 3.10 and get that added to our test suite. Need a few more days.

@a358003542
Copy link
Contributor Author

a358003542 commented May 3, 2022 via email

@danfunk danfunk merged commit ee1bf8d into sartography:master May 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants