@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 +61 -10
- package/README.md +10 -2
- package/action.yml +3 -2
- package/package.json +2 -2
- package/tests/features/reports.feature +11 -0
package/CHANGELOG.md
CHANGED
|
@@ -38,12 +38,12 @@ Format:
|
|
|
38
38
|
### Security
|
|
39
39
|
-
|
|
40
40
|
-->
|
|
41
|
-
<!--
|
|
41
|
+
<!-- ## [Unreleased] -->
|
|
42
42
|
|
|
43
|
-
## [
|
|
43
|
+
## [4.0.0] - 2022-03-30
|
|
44
44
|
### Added
|
|
45
|
-
- Add
|
|
46
|
-
- Add
|
|
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
|
-
#
|
|
2
|
-
Integrated automated end-to-end testing with docassemble, puppeteer, and
|
|
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:
|
|
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
|
|
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.
|
|
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
|
# ===============================
|