Build: Run pretest before test:* npm scripts

Build was already happening in scripts like `test:browser` but those scripts
were missing `pretest`, meaning that running `npm install && npm test:browser`
may have failed if `pretest` wasn't run before or if its results were out of
date.

Even worse, with such stale data some tests may erroneously succeed.

This also removes a separate `pretest` step from GitHub Actions as it's no
longer needed.

Closes gh-5338

(cherry picked from commit 1ad66aeb6d)
This commit is contained in:
Michał Gołębiowski-Owczarek 2023-10-16 18:54:54 +02:00 committed by Michał Gołębiowski-Owczarek
parent ce52a5dbb0
commit cd27f30662
No known key found for this signature in database
2 changed files with 8 additions and 11 deletions

View File

@ -75,9 +75,6 @@ jobs:
run: npm run build && npm run lint
if: matrix.NODE_VERSION == '18.x'
- name: Prepare tests
run: npm run pretest
- name: Run tests
env:
BROWSERS: ${{ matrix.BROWSERS }}

View File

@ -18,14 +18,14 @@
"pretest": "npm run qunit-fixture && npm run babel:tests && npm run npmcopy",
"qunit-fixture": "node build/tasks/qunit-fixture.js",
"start": "nodemon --watch src -x \"npm run build:all\"",
"test:browserless": "npm run test:node_smoke_tests && npm run test:promises_aplus && npm run test:jsdom",
"test:browser": "npm run build:all && grunt karma:main",
"test:amd": "npm run build:main && grunt karma:amd",
"test:jsdom": "npm run build:main && grunt test:jsdom",
"test:no-deprecated": "npm run build -- -e deprecated && grunt karma:main",
"test:selector-native": "npm run build -- -e selector && grunt karma:main",
"test:slim": "npm run build -- --slim && grunt karma:main",
"test:node_smoke_tests": "npm run build:all && node build/tasks/node_smoke_tests.js",
"test:browserless": "npm run pretest && npm run test:node_smoke_tests && npm run test:promises_aplus && npm run test:jsdom",
"test:browser": "npm run pretest && npm run build:all && grunt karma:main",
"test:amd": "npm run pretest && npm run build:main && grunt karma:amd",
"test:jsdom": "npm run pretest && npm run build:main && grunt test:jsdom",
"test:no-deprecated": "npm run pretest && npm run build -- -e deprecated && grunt karma:main",
"test:selector-native": "npm run pretest && npm run build -- -e selector && grunt karma:main",
"test:slim": "npm run pretest && npm run build -- --slim && grunt karma:main",
"test:node_smoke_tests": "npm run pretest && npm run build:all && node build/tasks/node_smoke_tests.js",
"test:promises_aplus": "npm run build:main && node build/tasks/promises_aplus_tests.js",
"test": "npm run build:all && npm run lint && npm run test:browserless && npm run test:browser && npm run test:amd && npm run test:slim && npm run test:no-deprecated && npm run test:selector-native"
},