Loading
task: #3636733 Use @webship-js/drupal-core-steps 2.1 for the webship-js suite and refresh the dependencies
Summary
The webship-js suite runs on the public step pack @webship-js/drupal-core-steps (^2.1.0) instead of local copies of the steps it provides, and CI runs a dry run before the browser job, so an undefined or ambiguous step fails early.
Changes
package.json: adds@webship-js/drupal-core-steps^2.1.0to the devDependencies (webship-jsis already^2.0.6, the pack's peer range) and adds thetest:dryscript (cucumber-js --dry-run); movesenginestonode>= 24.0andyarn>= 4.18.1andpackageManagerfromyarn@4.9.3toyarn@4.18.1.cucumber.js: adds the pack's step glob between thewebship-jsglob and the project's own. The users registry already has the pack's shape (username,email,password,roles,isAdmin).tests/step-definitions/cucumber_user_roles.steps.js: removes the custom login by handle andI add the testing userssteps, which match the same sentences as the pack's. The project's own steps stay..gitlab-ci.yml: thewebship-js-testjob runscucumber-js --dry-runbefore the suite, so an undefined or ambiguous step fails early; thecspelland lint jobs move fromnode:20tonode:24;YARN_ENABLE_IMMUTABLE_INSTALLS: "false"lets a job updateyarn.lockinstead of failing, because Yarn 4 makes installs immutable on CI;.composer-basepoints Drupal core's own Yarn 4.9.1 at.yarnrc.core.yml, so thecomposerjob does not read the project's.yarnrc.yml, whosenpmMinimalAgeGatesetting Yarn 4.9.1 rejects..yarnrc.yml: addsnpmMinimalAgeGate: 0, because Yarn 4.18.1 quarantines packages younger than a day by default (npmMinimalAgeGateis 1440 minutes) and the Webship step packs are released often.yarn.lock: refreshed for the new pack and Yarn 4.18.1. This project commits its lock file, andyarn install --immutablepasses with it.
Dry run on Node 24.22.2 from a fresh clone of this branch: 36 scenarios, 276 steps, none undefined or ambiguous.
Issue
Issue: https://www.drupal.org/node/3636733
AI-Generated: Yes (configuration and step cleanup; reviewed by Rajab Natshah.)
Checkpoints:
- File an issue
- Addition/Change/Update/Fix
- Testing to ensure no regression
- Automated unit testing coverage
- Automated functional testing coverage
- UX/UI designer responsibilities
- Readability
- Accessibility
- Performance
- Security
- Developer Documentation
- User Guide Documentation
- Reviewed by human
- Code review by maintainers
- Full testing and approval
- Credit contributors
- Review with the product owner
- Release notes snippet
- Release
Edited by Rajab Natshah