@suffolklitlab/alkiln 4.0.0-pre-api.9 → 4.0.0

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
@@ -38,12 +38,12 @@ Format:
38
38
  ### Security
39
39
  -
40
40
  -->
41
- <!--2022-02-11 -->
41
+ <!-- ## [Unreleased] -->
42
42
 
43
- ## [Unreleased]
43
+ ## [4.0.0] - 2022-03-30
44
44
  ### Added
45
- - Add action.yml that runs most of what users' workflows run now, along with notes for a new user workflow that will take less maintainance. See #420. We need to add documentation on how to write a workflow file as it currently is if they want to take back control. Setup interview has not yet been updated with this workflow.
46
- - Add package.json creation/overwriting to action.yml. Simplify package.json.
45
+ - BREAKING: Add package.json creation/overwriting to action.yml. Simplify package.json.
46
+ - BREAKING: Add action.yml that runs most of what users' workflows run now, along with notes for a new user workflow that will take less maintainance. See #420. We need to add documentation on how to write a workflow file as it currently is if they want to take back control. Setup interview has not yet been updated with this workflow.
47
47
  - Step: `the text in the JSON variable "variable_with_text_value" should be`. Compare JSON variable with a text value to given text. See #470. Does not accept nested values, e.g. "child.name.first". Downloads all the JSON vars to a .json file in the "downloads" artifacts.
48
48
  - Step to log the page's JSON variables and values in the report. Future goal: save to file. See #454.
49
49
  - Step to log into the developer's docassemble server account using GitHub SECRETs. See #499.
@@ -51,13 +51,13 @@ Format:
51
51
  - Add control of alkiln npm version to the action.yml
52
52
 
53
53
  ### Changed
54
- - NPM package is now suffolklitlab scoped package. Refer to @suffolklitlab/alkiln from now on.
55
- - Update to v13 of puppeteer
56
- - Update to v7 of cucumber
57
- - Update action.yml node to v17
58
- - Use alkiln v4 package.json we create during the test run in `action.yml` (as discussed in #489)
54
+ - BREAKING: NPM package is now suffolklitlab scoped package. Refer to @suffolklitlab/alkiln from now on.
55
+ - BREAKING: Update to v13 of puppeteer
56
+ - BREAKING: Update to v7 of cucumber
57
+ - BREAKING: Update action.yml node to v17
58
+ - BREAKING: Use alkiln v4 package.json we create during the test run in `action.yml` (as discussed in #489)
59
+ - BREAKING: Use API key to access da server, create projects, pull code, delete projects, and check for server restart.
59
60
  - Remove and ignore package-lock.json so that our tests will behave more like our users' tests
60
- - Use API key to access da server, create projects, pull code, delete projects, and check for server restart.
61
61
  - Add warning in steps.js for name input with too many parts. Add test in reports.
62
62
  - fix typo in the report
63
63
  - Throw an error for uploading nonexistent file, changed to error instead of warning in reports.
@@ -75,6 +75,57 @@ Format:
75
75
  - fix typo in the report.
76
76
  - session_vars branch path regex not removing start of branch path
77
77
 
78
+ ## [3.2.1] - 2022-02-09
79
+ ### Fixed
80
+ - Typo in report that was messing up copy/paste of test table
81
+
82
+ ## [3.2.0] - 2022-02-09
83
+ ### Added
84
+ - Add Step to log into server account using GitHub SECRETs (environment variables). See #499.
85
+
86
+ ## [3.1.11] - 2022-02-02
87
+ ### Changed
88
+ - Handle an Assembly Line name Step value that has too many names, including a warning for the developer. Include the first three names and the last name to try to catch suffixes.
89
+
90
+ ## [3.0.11] - 2022-01-25
91
+ ### Added
92
+ - Step: `the text in the JSON variable "variable_with_text_value" should be`. Compare JSON variable with a text value to given text. See #470. Does not accept nested values, e.g. "child.name.first". Downloads all the JSON vars to a .json file in the "downloads" artifacts.
93
+
94
+ ## [3.0.10] - 2022-01-24
95
+ ### Added
96
+ - Step to log the page's JSON variables and values in the report. Future goal: save to file. See #454.
97
+
98
+ ## [3.0.9] - 2022-01-10
99
+ ### Security
100
+ - Install the security fix in the action's package.json as well. Because dependents have to require cucumber itself, if they're not using our action (if they have their own package.json), they're going to have to implement this fix in their repo too. That's why our fix isn't working. We'll start the process of helping developers update. We also need to deprecate all previous versions of ALKiln. See #489.
101
+
102
+ ## [3.0.8] - 2022-01-10
103
+ ### Security
104
+ - Fully publish the security fix in v3.0.7
105
+
106
+ ## [3.0.7] - 2022-01-10
107
+ ### Security
108
+ - Pinned colors library to 1.4.0. See https://www.bleepingcomputer.com/news/security/dev-corrupts-npm-libs-colors-and-faker-breaking-thousands-of-apps/. We don't use faker, so we don't need to handle that.
109
+
110
+ ## [3.0.6] - 2022-01-07
111
+ ### Changed
112
+ - See #371
113
+ - Scenario heading tags are now on a second line
114
+ - Artifact filenames use dashes more and are created separately from Scenario headings
115
+ - Scenario ids are separated from filenames and Scenario headings
116
+
117
+ ## [3.0.5] - 2022-01-06
118
+ ### Added
119
+ - Add action.yml that runs most of what users' workflows run now, along with notes for a new user workflow that will take less maintainance. See #420. We need to add documentation on how to write a workflow file as it currently is if they want to take back control. Setup interview has not yet been updated with this workflow.
120
+ - Add package.json creation/overwriting to action.yml. Simplify package.json.
121
+
122
+ <!-- ## [3.0.1-peer-deps.1] - 2021-12-07 -->
123
+ ### Removed
124
+ - Peer dependencies and dev dependencies. Now `cucumber` is just a dependency. See https://github.com/SuffolkLITLab/ALKiln/issues/396 for discussion. Setup interview has not been updated to remove dependencies.
125
+
126
+ ### Fixed
127
+ - Fixed interview name not allowing url parameters. #449
128
+
78
129
  ## [3.0.4] - 2021-12-11
79
130
  ### Fixed
80
131
  - Use different criteria for testing that the package was saved.
package/README.md CHANGED
@@ -1,5 +1,13 @@
1
- # docassemble-cucumber
2
- Integrated automated end-to-end testing with docassemble, puppeteer, and cucumber.
1
+ # ALKiln
2
+ Integrated automated end-to-end testing with docassemble, puppeteer, cucumber, and chai.
3
+
4
+ Works well with https://github.com/suffolklitlab/docassemble-AssemblyLine but isn't
5
+ dependent on it.
6
+
7
+ Formerly named "docassemble-cucumber"
8
+
9
+ ## Documentation
10
+ Read about how to use this framework at https://suffolklitlab.org/docassemble-AssemblyLine-documentation/docs/automated_integrated_testing/.
3
11
 
4
12
  ## Integration tests
5
13
  To setup for the integration tests, create the project on the server:
package/action.yml CHANGED
@@ -27,7 +27,7 @@ inputs:
27
27
  ALKILN_VERSION:
28
28
  description: 'Version of ALKiln to get from npm.'
29
29
  required: false
30
- default: '4.0.0'
30
+ default: '^4.0.0'
31
31
 
32
32
  runs:
33
33
  using: "composite"
@@ -53,6 +53,7 @@ runs:
53
53
  echo "PLAYGROUND_PASSWORD=${{ inputs.PLAYGROUND_PASSWORD }}" >> $GITHUB_ENV
54
54
  echo "PLAYGROUND_ID=${{ inputs.PLAYGROUND_ID }}" >> $GITHUB_ENV
55
55
  echo "DOCASSEMBLE_DEVELOPER_API_KEY=${{ inputs.DOCASSEMBLE_DEVELOPER_API_KEY }}" >> $GITHUB_ENV
56
+ echo "ALKILN_VERSION=${{ inputs.ALKILN_VERSION }}" >> $GITHUB_ENV
56
57
  shell: bash
57
58
  - name: "ALKiln: confirm info"
58
59
  run: echo -e "\nRepo is $REPO_URL\nBranch ref is $BRANCH_PATH\nManually added languages are $EXTRA_LANGUAGES\nAll other data is secret\n"
@@ -60,7 +61,7 @@ runs:
60
61
 
61
62
  # This doesn't use an already established package-lock.json and that
62
63
  # comes with some types of test breaking risks. Same problem as before.
63
- - name: Overwrite or create package.json
64
+ - name: Temporarily overwrite or create package.json
64
65
  run: |
65
66
  cat << EOF > "package.json"
66
67
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@suffolklitlab/alkiln",
3
- "version": "4.0.0-pre-api.9",
3
+ "version": "4.0.0",
4
4
  "description": "Integrated automated end-to-end testing with docassemble, puppeteer, and cucumber.",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -32,7 +32,7 @@
32
32
  "bugs": {
33
33
  "url": "https://github.com/SuffolkLITLab/ALKiln/issues"
34
34
  },
35
- "homepage": "https://suffolklitlab.github.io/docassemble-AssemblyLine-documentation/docs/automated_integrated_testing",
35
+ "homepage": "https://suffolklitlab.org/docassemble-AssemblyLine-documentation/docs/automated_integrated_testing/",
36
36
  "dependencies": {
37
37
  "@cucumber/cucumber": "^7.3.2",
38
38
  "axios": "^0.24.0",
@@ -376,6 +376,16 @@ Scenario: Fail with 2 wrong signin secrets
376
376
  """
377
377
    Given I sign in with the email "WRONG_EMAIL_NAME" and the password "WRONG_PASSWORD_NAME"
378
378
 
379
+ @fast @rf25 @upload
380
+ Scenario: Fail with could not find files
381
+ Given the final Scenario status should be "failed"
382
+ Given the Scenario report should include:
383
+ """
384
+ Could not find "nonexistant1.pdf, nonexistant2.pdf"
385
+ """
386
+ Given I start the interview at "all_tests"
387
+ And I upload "nonexistant1.pdf, nonexistant2.pdf" to "upload_files_visible"
388
+
379
389
  # scope.js
380
390
  # I upload "___" to "___"
381
391
  # No need to test wrong var name
@@ -384,6 +394,7 @@ Scenario: Fail with 2 wrong signin secrets
384
394
  #
385
395
  # I sign
386
396
 
397
+
387
398
  # ===============================
388
399
  # Reports for Scenarios with warnings
389
400
  # ===============================