Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ensure the default hierarchy (BDD or suite based) implementation is the same across all packages #1068

Open
delatrie opened this issue Jul 23, 2024 · 0 comments
Assignees
Labels
theme:api Javascript API related issue theme:codeceptjs theme:cucumberjs CucumberJS related issue theme:cypress theme:jasmine Jasmine related issue theme:jest Jest related issue theme:mocha Mocha related issue theme:newman theme:vitest type:improvement Improvement or request
Milestone

Comments

@delatrie
Copy link
Collaborator

delatrie commented Jul 23, 2024

Current state

Currently, we have some inconsistencies in how the default hierarchy feature works across allure-js packages:

  • By what's added:
    • some packages add only one label from a hierarchy.
    • some add all three labels.
  • By the overriding policy:
    • Any user-defined label of the hierarchy prevents any of the default labels from being added (the "Replace all" policy).
    • A user-defined label of the hierarchy prevents the corresponding default label from being added (the "Replace one" policy).
    • The default labels are added in addition to user-defined ones (the "Duplicate" policy).

The summary table:

Package Default hierarchies Overriding policy
allure-codeceptjs Suites (suite only) Duplicate
allure-cucumberjs BDD (feature only Duplicate
allure-cypress Suites Duplicate
allure-jasmine Suites Duplicate
allure-jest Suites Duplicate
allure-mocha Suites Replace all
allure-playwright Suites Replace one
allure-vitest Suites Duplicate
newman-reporter-allure Suites Duplicate

The proposed change

  1. Consider adding one full default hierarchy (up to three labels from the BDD or suite family) in allure-codeceptjs and allure-cucumberjs.
  2. Implement the "Replace one" override policy across all packages.
  3. Introduce suites and bdd runtime functions, which should take 1-3 arguments and replace the entire hierarchy.

A related issue: #709.

@delatrie delatrie added the type:improvement Improvement or request label Jul 23, 2024
@delatrie delatrie changed the title Ensure the default hierarchy feature (BDD or suite based) implementation is the same across all packages Ensure the default hierarchy (BDD or suite based) implementation is the same across all packages Jul 23, 2024
@delatrie delatrie added theme:api Javascript API related issue theme:mocha Mocha related issue theme:jest Jest related issue theme:cucumberjs CucumberJS related issue theme:jasmine Jasmine related issue theme:newman theme:codeceptjs theme:vitest theme:cypress labels Jul 24, 2024
@delatrie delatrie added this to the 3.0 milestone Jul 26, 2024
@todti todti self-assigned this Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
theme:api Javascript API related issue theme:codeceptjs theme:cucumberjs CucumberJS related issue theme:cypress theme:jasmine Jasmine related issue theme:jest Jest related issue theme:mocha Mocha related issue theme:newman theme:vitest type:improvement Improvement or request
Projects
None yet
Development

No branches or pull requests

2 participants