Make `strict` behaviour consistent and document it
- Dominant language
- No language data
- Stars
- 3.4k
- Forks
- 679
- PR merge metrics
- No merged PRs in 30d
Description
Various cucumber implementations have inconsistent behaviour for `strict`:
* Default value true or false?
* Does strict cause undefined steps to fail?
* Does strict cause pending steps to fail?
I propose we make `strict` default to `true`. By defaulting to true we're actively discouraging users from making a lot of WIP, and I think an opinionated tool like Cucumber should do stuff like that.
I also propose the following behaviour:
| | strict=true | strict=false |
|----------------|-------------|--------------|
| undefined step | error | no error |
| pending step | error | no error |
| failed step | error | error |
| passed step | no error | no error |
| ambiguous step | error | error |
I haven't looked into whether the various implementations behave like this. Let's agree on the desired behaviour - then create issues for the implementations that deviate so we can fix this.
When all implementations are fixed we should put this up on the docs site.
Contributor guide
Assessment
This issue has not been assessed yet.