@suffolklitlab/alkiln 4.5.1 → 4.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -40,6 +40,12 @@ Format:
40
40
  -->
41
41
  <!-- ## [Unreleased] -->
42
42
 
43
+ ## [4.5.2] - 2022-06-10
44
+ ### Fixed
45
+ - (internal) Expected in report is reset properly
46
+ - if a test used "the Scenario report should include ...", then all tests that were
47
+ run after that would pass even if the test itself failed but wasn't expected to fail
48
+
43
49
  ## [4.5.1] - 2022-06-10
44
50
  ### Fixed
45
51
  - Corrected some schema errors in the `action.yml` (the `run` key was specified twice, should only have been once, and `required: False` is needed
package/lib/steps.js CHANGED
@@ -73,6 +73,8 @@ BeforeAll(async () => {
73
73
 
74
74
  Before(async (scenario) => {
75
75
  scope.scenario_id = uuidv4();
76
+ scope.expected_status = null;
77
+ scope.expected_in_report = null;
76
78
 
77
79
  await scope.addReportHeading(scope, {scenario});
78
80
  scope.base_filename = await scope.getSafeScenarioBaseFilename(scope, {scenario});
@@ -930,11 +932,10 @@ After(async function(scenario) {
930
932
  scope.expected_status = null; // reset for next Scenario
931
933
  expect( scenario.result.status ).to.equal( expected );
932
934
  }
933
- if ( scope.expected_in_report ) {
935
+ if ( scope.expected_in_report && scope.expected_in_report.length > 0) {
934
936
  let expected = scope.expected_in_report;
935
937
  // Reset report values no matter what so they don't mess up future scenarios
936
- // Maybe this should be in `Before`, but it would be so out of context there...
937
- scope.expected_in_report = [];
938
+ scope.expected_in_report = null;
938
939
  let all_were_included = await scope.reportIncludesAllExpected( scope, { expected });
939
940
  if ( all_were_included ) { scenario.result.status = `PASSED`; }
940
941
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@suffolklitlab/alkiln",
3
- "version": "4.5.1",
3
+ "version": "4.5.2",
4
4
  "description": "Integrated automated end-to-end testing with docassemble, puppeteer, and cucumber.",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -41,6 +41,11 @@ Scenario: I set text-type values
41
41
  And I set the var "showif_dropdown" to "showif_dropdown_1"
42
42
  When I tap to continue
43
43
  # Next page
44
+ Then the question id should be "object checkboxes"
45
+ And I set the var "object_checkboxes_test['obj_chkbx_opt_1']" to "true"
46
+ And I set the var "object_dropdown" to "obj_opt_2"
47
+ When I tap to continue
48
+ # Next page
44
49
  Then the question id should be "buttons yesnomaybe"
45
50
  When I set the var "buttons_yesnomaybe" to "None"
46
51
  # Next page
@@ -114,7 +119,7 @@ Scenario: tap elements
114
119
  And I tap the "#special_event" element and wait 1 second
115
120
  Then I see the phrase "Portishead"
116
121
 
117
- @i4 @tap-elements @tabs
122
+ @i4 @tap-elements @tabs @error
118
123
  Scenario: tap element with an error
119
124
  Given the final Scenario status should be "failed"
120
125
  And the Scenario report should include:
@@ -46,6 +46,8 @@ Scenario: I check navigation
46
46
  Then I arrive at the next page
47
47
    Then I get to "screen features" with this data:
48
48
  | var | value | trigger |
49
+ | object_checkboxes_test["obj_chkbx_opt_1"] | True | |
50
+ | object_dropdown | obj_opt_2 | |
49
51
  | button_continue | True | |
50
52
  | buttons_other | button_2 | |
51
53
  | buttons_yesnomaybe | True | |
@@ -160,6 +160,8 @@ Scenario: Fail with link with given text does not lead to correct url
160
160
  Then I arrive at the next page
161
161
    Then I get to "screen features" with this data:
162
162
  | var | value | trigger |
163
+ | object_checkboxes_test["obj_chkbx_opt_1"] | true | |
164
+ | object_dropdown | obj_opt_2 | |
163
165
  | button_continue | True | |
164
166
  | buttons_other | button_2 | |
165
167
  | buttons_yesnomaybe | True | |
@@ -188,6 +190,8 @@ Scenario: Fail with link unexpectedly opens in same window
188
190
  Then I arrive at the next page
189
191
    Then I get to "screen features" with this data:
190
192
  | var | value | trigger |
193
+ | object_checkboxes_test["obj_chkbx_opt_1"] | true | |
194
+ | object_dropdown | obj_opt_2 | |
191
195
  | button_continue | True | |
192
196
  | buttons_other | button_2 | |
193
197
  | buttons_yesnomaybe | True | |
@@ -216,6 +220,8 @@ Scenario: Fail with link unexpectedly opens in a new window
216
220
  Then I arrive at the next page
217
221
    Then I get to "screen features" with this data:
218
222
  | var | value | trigger |
223
+ | object_checkboxes_test["obj_chkbx_opt_1"] | true | |
224
+ | object_dropdown | obj_opt_2 | |
219
225
  | button_continue | True | |
220
226
  | buttons_other | button_2 | |
221
227
  | buttons_yesnomaybe | True | |
@@ -472,6 +478,11 @@ Scenario: Report still shows page id when I tap to continue without setting any
472
478
  # Next page
473
479
  Then the question id should be "showifs"
474
480
  When I tap to continue
481
+ # Next page
482
+ Then the question id should be "object checkboxes"
483
+ And I set the var "object_checkboxes_test['obj_chkbx_opt_1']" to "true"
484
+ And I set the var "object_dropdown" to "obj_opt_2"
485
+ When I tap to continue
475
486
  # Next page (showifs ID SHOULD BE SHOWN IN REPORT)
476
487
  Then the question id should be "buttons yesnomaybe"
477
488
 
@@ -517,6 +528,8 @@ Scenario: Report lists unused table rows
517
528
  | extra_5 | extra 5 | |
518
529
    Then I get to "screen features" with this data:
519
530
  | var | value | trigger |
531
+ | object_checkboxes_test["obj_chkbx_opt_1"] | true | |
532
+ | object_dropdown | obj_opt_2 | |
520
533
  | extra_6 | extra 6 | |
521
534
  | extra_7 | extra 7 | |
522
535
  | button_continue | True | |
@@ -47,6 +47,8 @@ Covers story table tests for:
47
47
  | checkboxes_yesno | True | |
48
48
  | direct_standard_fields | True | |
49
49
  | dropdown_test | dropdown_opt_2 | |
50
+ | object_checkboxes_test["obj_chkbx_opt_1"] | true | |
51
+ | object_dropdown | obj_opt_2 | |
50
52
  | radio_other | radio_other_opt_3 | |
51
53
  | radio_yesno | False | |
52
54
  | screen_features | True | |