@futdevpro/dynamo-e2e 1.5.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/.c8rc.json +25 -0
- package/.dynamo/pipeline.cicd.config.json +137 -0
- package/.dynamo/version-bump.config.json +5 -0
- package/.github/workflows/main.yml +29 -0
- package/BUILD.md +36 -0
- package/README.md +68 -0
- package/bin/dye2e.js +72 -0
- package/build/_modules/contracts/_collections/constants/cwv-default-thresholds.const.d.ts +10 -0
- package/build/_modules/contracts/_collections/constants/cwv-default-thresholds.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/constants/cwv-default-thresholds.const.js +24 -0
- package/build/_modules/contracts/_collections/constants/cwv-default-thresholds.const.js.map +1 -0
- package/build/_modules/contracts/_collections/constants/standard-viewports.const.d.ts +9 -0
- package/build/_modules/contracts/_collections/constants/standard-viewports.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/constants/standard-viewports.const.js +75 -0
- package/build/_modules/contracts/_collections/constants/standard-viewports.const.js.map +1 -0
- package/build/_modules/contracts/_collections/index.d.ts +5 -0
- package/build/_modules/contracts/_collections/index.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/index.js +21 -0
- package/build/_modules/contracts/_collections/index.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/checkbox-field-test-cases.const.d.ts +3 -0
- package/build/_modules/contracts/_collections/test-case-sets/checkbox-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/checkbox-field-test-cases.const.js +52 -0
- package/build/_modules/contracts/_collections/test-case-sets/checkbox-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/date-field-test-cases.const.d.ts +8 -0
- package/build/_modules/contracts/_collections/test-case-sets/date-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/date-field-test-cases.const.js +120 -0
- package/build/_modules/contracts/_collections/test-case-sets/date-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/field-type-registry.const.d.ts +18 -0
- package/build/_modules/contracts/_collections/test-case-sets/field-type-registry.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/field-type-registry.const.js +49 -0
- package/build/_modules/contracts/_collections/test-case-sets/field-type-registry.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/index.d.ts +10 -0
- package/build/_modules/contracts/_collections/test-case-sets/index.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/index.js +26 -0
- package/build/_modules/contracts/_collections/test-case-sets/index.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/multiselect-field-test-cases.const.d.ts +6 -0
- package/build/_modules/contracts/_collections/test-case-sets/multiselect-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/multiselect-field-test-cases.const.js +53 -0
- package/build/_modules/contracts/_collections/test-case-sets/multiselect-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/number-field-test-cases.const.d.ts +10 -0
- package/build/_modules/contracts/_collections/test-case-sets/number-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/number-field-test-cases.const.js +102 -0
- package/build/_modules/contracts/_collections/test-case-sets/number-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/password-field-test-cases.const.d.ts +7 -0
- package/build/_modules/contracts/_collections/test-case-sets/password-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/password-field-test-cases.const.js +85 -0
- package/build/_modules/contracts/_collections/test-case-sets/password-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/select-field-test-cases.const.d.ts +7 -0
- package/build/_modules/contracts/_collections/test-case-sets/select-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/select-field-test-cases.const.js +57 -0
- package/build/_modules/contracts/_collections/test-case-sets/select-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/slider-field-test-cases.const.d.ts +7 -0
- package/build/_modules/contracts/_collections/test-case-sets/slider-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/slider-field-test-cases.const.js +67 -0
- package/build/_modules/contracts/_collections/test-case-sets/slider-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/text-field-test-cases.const.d.ts +10 -0
- package/build/_modules/contracts/_collections/test-case-sets/text-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/text-field-test-cases.const.js +0 -0
- package/build/_modules/contracts/_collections/test-case-sets/text-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/textarea-field-test-cases.const.d.ts +3 -0
- package/build/_modules/contracts/_collections/test-case-sets/textarea-field-test-cases.const.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/test-case-sets/textarea-field-test-cases.const.js +58 -0
- package/build/_modules/contracts/_collections/test-case-sets/textarea-field-test-cases.const.js.map +1 -0
- package/build/_modules/contracts/_collections/utils/test-id.util.d.ts +13 -0
- package/build/_modules/contracts/_collections/utils/test-id.util.d.ts.map +1 -0
- package/build/_modules/contracts/_collections/utils/test-id.util.js +30 -0
- package/build/_modules/contracts/_collections/utils/test-id.util.js.map +1 -0
- package/build/_modules/contracts/_enums/cwv-metric-type.enum.d.ts +21 -0
- package/build/_modules/contracts/_enums/cwv-metric-type.enum.d.ts.map +1 -0
- package/build/_modules/contracts/_enums/cwv-metric-type.enum.js +25 -0
- package/build/_modules/contracts/_enums/cwv-metric-type.enum.js.map +1 -0
- package/build/_modules/contracts/_enums/field-test-case-type.enum.d.ts +83 -0
- package/build/_modules/contracts/_enums/field-test-case-type.enum.d.ts.map +1 -0
- package/build/_modules/contracts/_enums/field-test-case-type.enum.js +98 -0
- package/build/_modules/contracts/_enums/field-test-case-type.enum.js.map +1 -0
- package/build/_modules/contracts/_enums/index.d.ts +6 -0
- package/build/_modules/contracts/_enums/index.d.ts.map +1 -0
- package/build/_modules/contracts/_enums/index.js +22 -0
- package/build/_modules/contracts/_enums/index.js.map +1 -0
- package/build/_modules/contracts/_enums/standard-viewport.enum.d.ts +15 -0
- package/build/_modules/contracts/_enums/standard-viewport.enum.d.ts.map +1 -0
- package/build/_modules/contracts/_enums/standard-viewport.enum.js +19 -0
- package/build/_modules/contracts/_enums/standard-viewport.enum.js.map +1 -0
- package/build/_modules/contracts/_enums/test-expectation-type.enum.d.ts +17 -0
- package/build/_modules/contracts/_enums/test-expectation-type.enum.d.ts.map +1 -0
- package/build/_modules/contracts/_enums/test-expectation-type.enum.js +21 -0
- package/build/_modules/contracts/_enums/test-expectation-type.enum.js.map +1 -0
- package/build/_modules/contracts/_enums/test-run-mode-type.enum.d.ts +16 -0
- package/build/_modules/contracts/_enums/test-run-mode-type.enum.d.ts.map +1 -0
- package/build/_modules/contracts/_enums/test-run-mode-type.enum.js +20 -0
- package/build/_modules/contracts/_enums/test-run-mode-type.enum.js.map +1 -0
- package/build/_modules/contracts/_models/data-models/field-test-case-set.data-model.d.ts +19 -0
- package/build/_modules/contracts/_models/data-models/field-test-case-set.data-model.d.ts.map +1 -0
- package/build/_modules/contracts/_models/data-models/field-test-case-set.data-model.js +24 -0
- package/build/_modules/contracts/_models/data-models/field-test-case-set.data-model.js.map +1 -0
- package/build/_modules/contracts/_models/data-models/field-test-case.data-model.d.ts +37 -0
- package/build/_modules/contracts/_models/data-models/field-test-case.data-model.d.ts.map +1 -0
- package/build/_modules/contracts/_models/data-models/field-test-case.data-model.js +43 -0
- package/build/_modules/contracts/_models/data-models/field-test-case.data-model.js.map +1 -0
- package/build/_modules/contracts/_models/data-models/index.d.ts +3 -0
- package/build/_modules/contracts/_models/data-models/index.d.ts.map +1 -0
- package/build/_modules/contracts/_models/data-models/index.js +19 -0
- package/build/_modules/contracts/_models/data-models/index.js.map +1 -0
- package/build/_modules/contracts/_models/interfaces/cwv-thresholds.interface.d.ts +16 -0
- package/build/_modules/contracts/_models/interfaces/cwv-thresholds.interface.d.ts.map +1 -0
- package/build/_modules/contracts/_models/interfaces/cwv-thresholds.interface.js +3 -0
- package/build/_modules/contracts/_models/interfaces/cwv-thresholds.interface.js.map +1 -0
- package/build/_modules/contracts/_models/interfaces/form-test-suite-settings.interface.d.ts +45 -0
- package/build/_modules/contracts/_models/interfaces/form-test-suite-settings.interface.d.ts.map +1 -0
- package/build/_modules/contracts/_models/interfaces/form-test-suite-settings.interface.js +3 -0
- package/build/_modules/contracts/_models/interfaces/form-test-suite-settings.interface.js.map +1 -0
- package/build/_modules/contracts/_models/interfaces/index.d.ts +4 -0
- package/build/_modules/contracts/_models/interfaces/index.d.ts.map +1 -0
- package/build/_modules/contracts/_models/interfaces/index.js +20 -0
- package/build/_modules/contracts/_models/interfaces/index.js.map +1 -0
- package/build/_modules/contracts/_models/interfaces/viewport.interface.d.ts +16 -0
- package/build/_modules/contracts/_models/interfaces/viewport.interface.d.ts.map +1 -0
- package/build/_modules/contracts/_models/interfaces/viewport.interface.js +3 -0
- package/build/_modules/contracts/_models/interfaces/viewport.interface.js.map +1 -0
- package/build/_modules/contracts/contracts.spec.d.ts +2 -0
- package/build/_modules/contracts/contracts.spec.d.ts.map +1 -0
- package/build/_modules/contracts/contracts.spec.js +144 -0
- package/build/_modules/contracts/contracts.spec.js.map +1 -0
- package/build/_modules/contracts/index.d.ts +6 -0
- package/build/_modules/contracts/index.d.ts.map +1 -0
- package/build/_modules/contracts/index.js +26 -0
- package/build/_modules/contracts/index.js.map +1 -0
- package/build/_modules/cwv/_collections/cwv-aggregator.util.d.ts +23 -0
- package/build/_modules/cwv/_collections/cwv-aggregator.util.d.ts.map +1 -0
- package/build/_modules/cwv/_collections/cwv-aggregator.util.js +50 -0
- package/build/_modules/cwv/_collections/cwv-aggregator.util.js.map +1 -0
- package/build/_modules/cwv/_collections/cwv-emission.util.d.ts +18 -0
- package/build/_modules/cwv/_collections/cwv-emission.util.d.ts.map +1 -0
- package/build/_modules/cwv/_collections/cwv-emission.util.js +95 -0
- package/build/_modules/cwv/_collections/cwv-emission.util.js.map +1 -0
- package/build/_modules/cwv/_collections/web-vitals-page-script.const.d.ts +11 -0
- package/build/_modules/cwv/_collections/web-vitals-page-script.const.d.ts.map +1 -0
- package/build/_modules/cwv/_collections/web-vitals-page-script.const.js +86 -0
- package/build/_modules/cwv/_collections/web-vitals-page-script.const.js.map +1 -0
- package/build/_modules/cwv/_models/cwv-measurement.data-model.d.ts +22 -0
- package/build/_modules/cwv/_models/cwv-measurement.data-model.d.ts.map +1 -0
- package/build/_modules/cwv/_models/cwv-measurement.data-model.js +28 -0
- package/build/_modules/cwv/_models/cwv-measurement.data-model.js.map +1 -0
- package/build/_modules/cwv/_models/cwv-suite-generate-options.interface.d.ts +22 -0
- package/build/_modules/cwv/_models/cwv-suite-generate-options.interface.d.ts.map +1 -0
- package/build/_modules/cwv/_models/cwv-suite-generate-options.interface.js +3 -0
- package/build/_modules/cwv/_models/cwv-suite-generate-options.interface.js.map +1 -0
- package/build/_modules/cwv/_models/index.d.ts +3 -0
- package/build/_modules/cwv/_models/index.d.ts.map +1 -0
- package/build/_modules/cwv/_models/index.js +19 -0
- package/build/_modules/cwv/_models/index.js.map +1 -0
- package/build/_modules/cwv/cwv-suite.generator.d.ts +13 -0
- package/build/_modules/cwv/cwv-suite.generator.d.ts.map +1 -0
- package/build/_modules/cwv/cwv-suite.generator.js +38 -0
- package/build/_modules/cwv/cwv-suite.generator.js.map +1 -0
- package/build/_modules/cwv/cwv-suite.generator.spec.d.ts +2 -0
- package/build/_modules/cwv/cwv-suite.generator.spec.d.ts.map +1 -0
- package/build/_modules/cwv/cwv-suite.generator.spec.js +81 -0
- package/build/_modules/cwv/cwv-suite.generator.spec.js.map +1 -0
- package/build/_modules/cwv/index.d.ts +10 -0
- package/build/_modules/cwv/index.d.ts.map +1 -0
- package/build/_modules/cwv/index.js +27 -0
- package/build/_modules/cwv/index.js.map +1 -0
- package/build/_modules/generators/_collections/cli-runner.util.d.ts +20 -0
- package/build/_modules/generators/_collections/cli-runner.util.d.ts.map +1 -0
- package/build/_modules/generators/_collections/cli-runner.util.js +87 -0
- package/build/_modules/generators/_collections/cli-runner.util.js.map +1 -0
- package/build/_modules/generators/_collections/field-emission.util.d.ts +24 -0
- package/build/_modules/generators/_collections/field-emission.util.d.ts.map +1 -0
- package/build/_modules/generators/_collections/field-emission.util.js +102 -0
- package/build/_modules/generators/_collections/field-emission.util.js.map +1 -0
- package/build/_modules/generators/_collections/form-level-emission.util.d.ts +12 -0
- package/build/_modules/generators/_collections/form-level-emission.util.d.ts.map +1 -0
- package/build/_modules/generators/_collections/form-level-emission.util.js +43 -0
- package/build/_modules/generators/_collections/form-level-emission.util.js.map +1 -0
- package/build/_modules/generators/_collections/spec-emission.util.d.ts +21 -0
- package/build/_modules/generators/_collections/spec-emission.util.d.ts.map +1 -0
- package/build/_modules/generators/_collections/spec-emission.util.js +71 -0
- package/build/_modules/generators/_collections/spec-emission.util.js.map +1 -0
- package/build/_modules/generators/_collections/test-case-filter.util.d.ts +25 -0
- package/build/_modules/generators/_collections/test-case-filter.util.d.ts.map +1 -0
- package/build/_modules/generators/_collections/test-case-filter.util.js +127 -0
- package/build/_modules/generators/_collections/test-case-filter.util.js.map +1 -0
- package/build/_modules/generators/_collections/viewport-emission.util.d.ts +23 -0
- package/build/_modules/generators/_collections/viewport-emission.util.d.ts.map +1 -0
- package/build/_modules/generators/_collections/viewport-emission.util.js +61 -0
- package/build/_modules/generators/_collections/viewport-emission.util.js.map +1 -0
- package/build/_modules/generators/_models/form-settings-shape.interface.d.ts +59 -0
- package/build/_modules/generators/_models/form-settings-shape.interface.d.ts.map +1 -0
- package/build/_modules/generators/_models/form-settings-shape.interface.js +11 -0
- package/build/_modules/generators/_models/form-settings-shape.interface.js.map +1 -0
- package/build/_modules/generators/_models/form-suite-generate-options.interface.d.ts +23 -0
- package/build/_modules/generators/_models/form-suite-generate-options.interface.d.ts.map +1 -0
- package/build/_modules/generators/_models/form-suite-generate-options.interface.js +3 -0
- package/build/_modules/generators/_models/form-suite-generate-options.interface.js.map +1 -0
- package/build/_modules/generators/_models/index.d.ts +5 -0
- package/build/_modules/generators/_models/index.d.ts.map +1 -0
- package/build/_modules/generators/_models/index.js +21 -0
- package/build/_modules/generators/_models/index.js.map +1 -0
- package/build/_modules/generators/_models/route-descriptor.interface.d.ts +18 -0
- package/build/_modules/generators/_models/route-descriptor.interface.d.ts.map +1 -0
- package/build/_modules/generators/_models/route-descriptor.interface.js +3 -0
- package/build/_modules/generators/_models/route-descriptor.interface.js.map +1 -0
- package/build/_modules/generators/_models/viewport-suite-generate-options.interface.d.ts +36 -0
- package/build/_modules/generators/_models/viewport-suite-generate-options.interface.d.ts.map +1 -0
- package/build/_modules/generators/_models/viewport-suite-generate-options.interface.js +3 -0
- package/build/_modules/generators/_models/viewport-suite-generate-options.interface.js.map +1 -0
- package/build/_modules/generators/cli-runner.spec.d.ts +2 -0
- package/build/_modules/generators/cli-runner.spec.d.ts.map +1 -0
- package/build/_modules/generators/cli-runner.spec.js +93 -0
- package/build/_modules/generators/cli-runner.spec.js.map +1 -0
- package/build/_modules/generators/field-emission-edge.spec.d.ts +2 -0
- package/build/_modules/generators/field-emission-edge.spec.d.ts.map +1 -0
- package/build/_modules/generators/field-emission-edge.spec.js +115 -0
- package/build/_modules/generators/field-emission-edge.spec.js.map +1 -0
- package/build/_modules/generators/form-suite.generator.d.ts +24 -0
- package/build/_modules/generators/form-suite.generator.d.ts.map +1 -0
- package/build/_modules/generators/form-suite.generator.js +87 -0
- package/build/_modules/generators/form-suite.generator.js.map +1 -0
- package/build/_modules/generators/form-suite.generator.spec.d.ts +2 -0
- package/build/_modules/generators/form-suite.generator.spec.d.ts.map +1 -0
- package/build/_modules/generators/form-suite.generator.spec.js +144 -0
- package/build/_modules/generators/form-suite.generator.spec.js.map +1 -0
- package/build/_modules/generators/index.d.ts +10 -0
- package/build/_modules/generators/index.d.ts.map +1 -0
- package/build/_modules/generators/index.js +26 -0
- package/build/_modules/generators/index.js.map +1 -0
- package/build/_modules/generators/test-case-filter-edge.spec.d.ts +2 -0
- package/build/_modules/generators/test-case-filter-edge.spec.d.ts.map +1 -0
- package/build/_modules/generators/test-case-filter-edge.spec.js +72 -0
- package/build/_modules/generators/test-case-filter-edge.spec.js.map +1 -0
- package/build/_modules/generators/viewport-suite.generator.d.ts +21 -0
- package/build/_modules/generators/viewport-suite.generator.d.ts.map +1 -0
- package/build/_modules/generators/viewport-suite.generator.js +64 -0
- package/build/_modules/generators/viewport-suite.generator.js.map +1 -0
- package/build/_modules/generators/viewport-suite.generator.spec.d.ts +2 -0
- package/build/_modules/generators/viewport-suite.generator.spec.d.ts.map +1 -0
- package/build/_modules/generators/viewport-suite.generator.spec.js +59 -0
- package/build/_modules/generators/viewport-suite.generator.spec.js.map +1 -0
- package/build/_modules/presets/index.d.ts +14 -0
- package/build/_modules/presets/index.d.ts.map +1 -0
- package/build/_modules/presets/index.js +17 -0
- package/build/_modules/presets/index.js.map +1 -0
- package/build/_modules/runtime/_collections/assertion-helpers.util.d.ts +20 -0
- package/build/_modules/runtime/_collections/assertion-helpers.util.d.ts.map +1 -0
- package/build/_modules/runtime/_collections/assertion-helpers.util.js +39 -0
- package/build/_modules/runtime/_collections/assertion-helpers.util.js.map +1 -0
- package/build/_modules/runtime/_collections/unique-generator.util.d.ts +36 -0
- package/build/_modules/runtime/_collections/unique-generator.util.d.ts.map +1 -0
- package/build/_modules/runtime/_collections/unique-generator.util.js +57 -0
- package/build/_modules/runtime/_collections/unique-generator.util.js.map +1 -0
- package/build/_modules/runtime/_collections/wait-helpers.util.d.ts +18 -0
- package/build/_modules/runtime/_collections/wait-helpers.util.d.ts.map +1 -0
- package/build/_modules/runtime/_collections/wait-helpers.util.js +52 -0
- package/build/_modules/runtime/_collections/wait-helpers.util.js.map +1 -0
- package/build/_modules/runtime/_models/env-config.interface.d.ts +22 -0
- package/build/_modules/runtime/_models/env-config.interface.d.ts.map +1 -0
- package/build/_modules/runtime/_models/env-config.interface.js +20 -0
- package/build/_modules/runtime/_models/env-config.interface.js.map +1 -0
- package/build/_modules/runtime/_models/index.d.ts +2 -0
- package/build/_modules/runtime/_models/index.d.ts.map +1 -0
- package/build/_modules/runtime/_models/index.js +18 -0
- package/build/_modules/runtime/_models/index.js.map +1 -0
- package/build/_modules/runtime/_models/test-user.interface.d.ts +19 -0
- package/build/_modules/runtime/_models/test-user.interface.d.ts.map +1 -0
- package/build/_modules/runtime/_models/test-user.interface.js +3 -0
- package/build/_modules/runtime/_models/test-user.interface.js.map +1 -0
- package/build/_modules/runtime/_services/dialog-page-object.d.ts +13 -0
- package/build/_modules/runtime/_services/dialog-page-object.d.ts.map +1 -0
- package/build/_modules/runtime/_services/dialog-page-object.js +26 -0
- package/build/_modules/runtime/_services/dialog-page-object.js.map +1 -0
- package/build/_modules/runtime/_services/field-page-object.d.ts +23 -0
- package/build/_modules/runtime/_services/field-page-object.d.ts.map +1 -0
- package/build/_modules/runtime/_services/field-page-object.js +55 -0
- package/build/_modules/runtime/_services/field-page-object.js.map +1 -0
- package/build/_modules/runtime/_services/form-page-object.d.ts +16 -0
- package/build/_modules/runtime/_services/form-page-object.d.ts.map +1 -0
- package/build/_modules/runtime/_services/form-page-object.js +33 -0
- package/build/_modules/runtime/_services/form-page-object.js.map +1 -0
- package/build/_modules/runtime/_services/loader-page-object.d.ts +10 -0
- package/build/_modules/runtime/_services/loader-page-object.d.ts.map +1 -0
- package/build/_modules/runtime/_services/loader-page-object.js +24 -0
- package/build/_modules/runtime/_services/loader-page-object.js.map +1 -0
- package/build/_modules/runtime/_services/logger.service.d.ts +36 -0
- package/build/_modules/runtime/_services/logger.service.d.ts.map +1 -0
- package/build/_modules/runtime/_services/logger.service.js +68 -0
- package/build/_modules/runtime/_services/logger.service.js.map +1 -0
- package/build/_modules/runtime/_services/login-flow-helper.base.d.ts +51 -0
- package/build/_modules/runtime/_services/login-flow-helper.base.d.ts.map +1 -0
- package/build/_modules/runtime/_services/login-flow-helper.base.js +48 -0
- package/build/_modules/runtime/_services/login-flow-helper.base.js.map +1 -0
- package/build/_modules/runtime/_services/nav-page-object.d.ts +12 -0
- package/build/_modules/runtime/_services/nav-page-object.d.ts.map +1 -0
- package/build/_modules/runtime/_services/nav-page-object.js +23 -0
- package/build/_modules/runtime/_services/nav-page-object.js.map +1 -0
- package/build/_modules/runtime/_services/toast-page-object.d.ts +9 -0
- package/build/_modules/runtime/_services/toast-page-object.d.ts.map +1 -0
- package/build/_modules/runtime/_services/toast-page-object.js +19 -0
- package/build/_modules/runtime/_services/toast-page-object.js.map +1 -0
- package/build/_modules/runtime/assertion-helpers.spec.d.ts +2 -0
- package/build/_modules/runtime/assertion-helpers.spec.d.ts.map +1 -0
- package/build/_modules/runtime/assertion-helpers.spec.js +57 -0
- package/build/_modules/runtime/assertion-helpers.spec.js.map +1 -0
- package/build/_modules/runtime/fixtures.d.ts +32 -0
- package/build/_modules/runtime/fixtures.d.ts.map +1 -0
- package/build/_modules/runtime/fixtures.js +37 -0
- package/build/_modules/runtime/fixtures.js.map +1 -0
- package/build/_modules/runtime/index.d.ts +30 -0
- package/build/_modules/runtime/index.d.ts.map +1 -0
- package/build/_modules/runtime/index.js +47 -0
- package/build/_modules/runtime/index.js.map +1 -0
- package/build/_modules/runtime/logger.service.spec.d.ts +2 -0
- package/build/_modules/runtime/logger.service.spec.d.ts.map +1 -0
- package/build/_modules/runtime/logger.service.spec.js +61 -0
- package/build/_modules/runtime/logger.service.spec.js.map +1 -0
- package/build/_modules/runtime/login-flow-helper.spec.d.ts +2 -0
- package/build/_modules/runtime/login-flow-helper.spec.d.ts.map +1 -0
- package/build/_modules/runtime/login-flow-helper.spec.js +74 -0
- package/build/_modules/runtime/login-flow-helper.spec.js.map +1 -0
- package/build/_modules/runtime/page-objects.spec.d.ts +2 -0
- package/build/_modules/runtime/page-objects.spec.d.ts.map +1 -0
- package/build/_modules/runtime/page-objects.spec.js +241 -0
- package/build/_modules/runtime/page-objects.spec.js.map +1 -0
- package/build/_modules/runtime/runtime.spec.d.ts +2 -0
- package/build/_modules/runtime/runtime.spec.d.ts.map +1 -0
- package/build/_modules/runtime/runtime.spec.js +73 -0
- package/build/_modules/runtime/runtime.spec.js.map +1 -0
- package/build/_modules/runtime/unique-generator.spec.d.ts +2 -0
- package/build/_modules/runtime/unique-generator.spec.d.ts.map +1 -0
- package/build/_modules/runtime/unique-generator.spec.js +41 -0
- package/build/_modules/runtime/unique-generator.spec.js.map +1 -0
- package/build/index.d.ts +8 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +26 -0
- package/build/index.js.map +1 -0
- package/coverage/base.css +224 -0
- package/coverage/block-navigation.js +87 -0
- package/coverage/contracts/_collections/index.html +116 -0
- package/coverage/contracts/_collections/index.ts.html +97 -0
- package/coverage/contracts/_collections/utils/index.html +116 -0
- package/coverage/contracts/_collections/utils/test-id.util.ts.html +172 -0
- package/coverage/contracts/_enums/cwv-metric-type.enum.ts.html +145 -0
- package/coverage/contracts/_enums/field-test-case-type.enum.ts.html +394 -0
- package/coverage/contracts/_enums/index.html +191 -0
- package/coverage/contracts/_enums/index.ts.html +100 -0
- package/coverage/contracts/_enums/standard-viewport.enum.ts.html +127 -0
- package/coverage/contracts/_enums/test-expectation-type.enum.ts.html +133 -0
- package/coverage/contracts/_enums/test-run-mode-type.enum.ts.html +130 -0
- package/coverage/contracts/index.html +116 -0
- package/coverage/contracts/index.ts.html +121 -0
- package/coverage/cwv/_collections/cwv-aggregator.util.ts.html +241 -0
- package/coverage/cwv/_collections/cwv-emission.util.ts.html +394 -0
- package/coverage/cwv/_collections/index.html +146 -0
- package/coverage/cwv/_collections/web-vitals-page-script.const.ts.html +331 -0
- package/coverage/cwv/cwv-suite.generator.ts.html +232 -0
- package/coverage/cwv/index.html +116 -0
- package/coverage/favicon.png +0 -0
- package/coverage/generators/_collections/cli-runner.util.ts.html +361 -0
- package/coverage/generators/_collections/field-emission.util.ts.html +478 -0
- package/coverage/generators/_collections/form-level-emission.util.ts.html +220 -0
- package/coverage/generators/_collections/index.html +191 -0
- package/coverage/generators/_collections/spec-emission.util.ts.html +298 -0
- package/coverage/generators/_collections/test-case-filter.util.ts.html +523 -0
- package/coverage/generators/_collections/viewport-emission.util.ts.html +313 -0
- package/coverage/generators/form-suite.generator.ts.html +406 -0
- package/coverage/generators/index.html +131 -0
- package/coverage/generators/viewport-suite.generator.ts.html +307 -0
- package/coverage/index.html +266 -0
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +87 -0
- package/coverage/lcov-report/contracts/_collections/index.html +116 -0
- package/coverage/lcov-report/contracts/_collections/index.ts.html +97 -0
- package/coverage/lcov-report/contracts/_collections/utils/index.html +116 -0
- package/coverage/lcov-report/contracts/_collections/utils/test-id.util.ts.html +172 -0
- package/coverage/lcov-report/contracts/_enums/cwv-metric-type.enum.ts.html +145 -0
- package/coverage/lcov-report/contracts/_enums/field-test-case-type.enum.ts.html +394 -0
- package/coverage/lcov-report/contracts/_enums/index.html +191 -0
- package/coverage/lcov-report/contracts/_enums/index.ts.html +100 -0
- package/coverage/lcov-report/contracts/_enums/standard-viewport.enum.ts.html +127 -0
- package/coverage/lcov-report/contracts/_enums/test-expectation-type.enum.ts.html +133 -0
- package/coverage/lcov-report/contracts/_enums/test-run-mode-type.enum.ts.html +130 -0
- package/coverage/lcov-report/contracts/index.html +116 -0
- package/coverage/lcov-report/contracts/index.ts.html +121 -0
- package/coverage/lcov-report/cwv/_collections/cwv-aggregator.util.ts.html +241 -0
- package/coverage/lcov-report/cwv/_collections/cwv-emission.util.ts.html +394 -0
- package/coverage/lcov-report/cwv/_collections/index.html +146 -0
- package/coverage/lcov-report/cwv/_collections/web-vitals-page-script.const.ts.html +331 -0
- package/coverage/lcov-report/cwv/cwv-suite.generator.ts.html +232 -0
- package/coverage/lcov-report/cwv/index.html +116 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/generators/_collections/cli-runner.util.ts.html +361 -0
- package/coverage/lcov-report/generators/_collections/field-emission.util.ts.html +478 -0
- package/coverage/lcov-report/generators/_collections/form-level-emission.util.ts.html +220 -0
- package/coverage/lcov-report/generators/_collections/index.html +191 -0
- package/coverage/lcov-report/generators/_collections/spec-emission.util.ts.html +298 -0
- package/coverage/lcov-report/generators/_collections/test-case-filter.util.ts.html +523 -0
- package/coverage/lcov-report/generators/_collections/viewport-emission.util.ts.html +313 -0
- package/coverage/lcov-report/generators/form-suite.generator.ts.html +406 -0
- package/coverage/lcov-report/generators/index.html +131 -0
- package/coverage/lcov-report/generators/viewport-suite.generator.ts.html +307 -0
- package/coverage/lcov-report/index.html +266 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/runtime/_collections/assertion-helpers.util.ts.html +205 -0
- package/coverage/lcov-report/runtime/_collections/index.html +146 -0
- package/coverage/lcov-report/runtime/_collections/unique-generator.util.ts.html +256 -0
- package/coverage/lcov-report/runtime/_collections/wait-helpers.util.ts.html +238 -0
- package/coverage/lcov-report/runtime/_services/dialog-page-object.ts.html +157 -0
- package/coverage/lcov-report/runtime/_services/field-page-object.ts.html +253 -0
- package/coverage/lcov-report/runtime/_services/form-page-object.ts.html +184 -0
- package/coverage/lcov-report/runtime/_services/index.html +221 -0
- package/coverage/lcov-report/runtime/_services/loader-page-object.ts.html +142 -0
- package/coverage/lcov-report/runtime/_services/logger.service.ts.html +385 -0
- package/coverage/lcov-report/runtime/_services/login-flow-helper.base.ts.html +331 -0
- package/coverage/lcov-report/runtime/_services/nav-page-object.ts.html +145 -0
- package/coverage/lcov-report/runtime/_services/toast-page-object.ts.html +130 -0
- package/coverage/lcov-report/runtime/index.html +116 -0
- package/coverage/lcov-report/runtime/index.ts.html +175 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +210 -0
- package/coverage/lcov.info +2527 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +2 -0
- package/coverage/runtime/_collections/assertion-helpers.util.ts.html +205 -0
- package/coverage/runtime/_collections/index.html +146 -0
- package/coverage/runtime/_collections/unique-generator.util.ts.html +256 -0
- package/coverage/runtime/_collections/wait-helpers.util.ts.html +238 -0
- package/coverage/runtime/_services/dialog-page-object.ts.html +157 -0
- package/coverage/runtime/_services/field-page-object.ts.html +253 -0
- package/coverage/runtime/_services/form-page-object.ts.html +184 -0
- package/coverage/runtime/_services/index.html +221 -0
- package/coverage/runtime/_services/loader-page-object.ts.html +142 -0
- package/coverage/runtime/_services/logger.service.ts.html +385 -0
- package/coverage/runtime/_services/login-flow-helper.base.ts.html +331 -0
- package/coverage/runtime/_services/nav-page-object.ts.html +145 -0
- package/coverage/runtime/_services/toast-page-object.ts.html +130 -0
- package/coverage/runtime/index.html +116 -0
- package/coverage/runtime/index.ts.html +175 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +210 -0
- package/coverage/tmp/coverage-215876-1781064798541-0.json +1 -0
- package/coverage/tmp/coverage-223792-1781064800382-0.json +1 -0
- package/dogfood/PARITY-MATRIX.md +67 -0
- package/dogfood/generated/date-range-field-new.spec.ts +54 -0
- package/dogfood/generated/password-field-new.spec.ts +97 -0
- package/dogfood/generated/radio-select-field-new.spec.ts +69 -0
- package/dogfood/generated/slider-field-new.spec.ts +47 -0
- package/dogfood/generated/text-field-new.spec.ts +0 -0
- package/dogfood/generated-full/checkbox-field-new.spec.ts +56 -0
- package/dogfood/generated-full/date-field-new.spec.ts +71 -0
- package/dogfood/generated-full/date-range-field-new.spec.ts +54 -0
- package/dogfood/generated-full/datetime-field-new.spec.ts +55 -0
- package/dogfood/generated-full/multiselect-field-new.spec.ts +69 -0
- package/dogfood/generated-full/number-field-new.spec.ts +113 -0
- package/dogfood/generated-full/password-field-new.spec.ts +97 -0
- package/dogfood/generated-full/radio-select-field-new.spec.ts +69 -0
- package/dogfood/generated-full/sandbox-viewport-audit.spec.ts +4643 -0
- package/dogfood/generated-full/select-field-new.spec.ts +69 -0
- package/dogfood/generated-full/slider-field-new.spec.ts +47 -0
- package/dogfood/generated-full/slider-range-field-new.spec.ts +54 -0
- package/dogfood/generated-full/text-field-new.spec.ts +0 -0
- package/dogfood/generated-full/textarea-field-new.spec.ts +72 -0
- package/dogfood/sandbox-bootstrap-full.js +248 -0
- package/dogfood/sandbox-bootstrap.js +170 -0
- package/examples/minimal-form/README.md +55 -0
- package/examples/minimal-form/form-config.json +38 -0
- package/examples/multi-form-app/README.md +63 -0
- package/examples/multi-form-app/cwv-config.json +14 -0
- package/examples/multi-form-app/settings/login-form.json +11 -0
- package/examples/multi-form-app/settings/profile-form.json +25 -0
- package/examples/multi-form-app/viewport-config.json +12 -0
- package/package.json +103 -0
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.DYE2E_CWV_VERSION = void 0;
|
|
18
|
+
/**
|
|
19
|
+
* `@futdevpro/dynamo-e2e/cwv` — Core Web Vitals diagnostics (Wave-3).
|
|
20
|
+
*/
|
|
21
|
+
__exportStar(require("./_collections/cwv-aggregator.util"), exports);
|
|
22
|
+
__exportStar(require("./_collections/cwv-emission.util"), exports);
|
|
23
|
+
__exportStar(require("./_collections/web-vitals-page-script.const"), exports);
|
|
24
|
+
__exportStar(require("./_models/index"), exports);
|
|
25
|
+
__exportStar(require("./cwv-suite.generator"), exports);
|
|
26
|
+
exports.DYE2E_CWV_VERSION = 'wave-3-ready';
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/cwv/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,qEAAmD;AACnD,mEAAiD;AACjD,8EAA4D;AAC5D,kDAAgC;AAChC,wDAAsC;AAEzB,QAAA,iBAAiB,GAAW,cAAc,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stateless CLI-runner — a `bin/dye2e.js` köztes-réteg. Bemenet: args + olvasott
|
|
3
|
+
* config-JSON; kimenet: emit-elt spec.ts string + return-code.
|
|
4
|
+
*
|
|
5
|
+
* Külön util, hogy jasmine-spec-elhető legyen (a bin/* I/O-mentes wrap).
|
|
6
|
+
*/
|
|
7
|
+
export declare class DyE2E_CliRunner_Util {
|
|
8
|
+
static parseArgs(argv: string[]): {
|
|
9
|
+
command: string;
|
|
10
|
+
flags: Record<string, string>;
|
|
11
|
+
};
|
|
12
|
+
static helpText(): string;
|
|
13
|
+
static versionText(version: string): string;
|
|
14
|
+
/**
|
|
15
|
+
* A 3 generate-parancs köztes-runner-je. A konfig egy JSON-string (filesystem
|
|
16
|
+
* read az `bin/`-ben történik), a kimenet a spec.ts string.
|
|
17
|
+
*/
|
|
18
|
+
static runGenerate(command: 'generate-form-suite' | 'generate-viewport-audit' | 'generate-cwv-diag', configJson: string): string;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=cli-runner.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-runner.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,qBAAa,oBAAoB;IAE/B,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;IAsBpF,MAAM,CAAC,QAAQ,IAAI,MAAM;IA8BzB,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI3C;;;OAGG;IACH,MAAM,CAAC,WAAW,CAChB,OAAO,EAAE,qBAAqB,GAAG,yBAAyB,GAAG,mBAAmB,EAChF,UAAU,EAAE,MAAM,GACjB,MAAM;CAaV"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyE2E_CliRunner_Util = void 0;
|
|
4
|
+
const form_suite_generator_1 = require("../form-suite.generator");
|
|
5
|
+
const viewport_suite_generator_1 = require("../viewport-suite.generator");
|
|
6
|
+
const cwv_suite_generator_1 = require("../../cwv/cwv-suite.generator");
|
|
7
|
+
/**
|
|
8
|
+
* Stateless CLI-runner — a `bin/dye2e.js` köztes-réteg. Bemenet: args + olvasott
|
|
9
|
+
* config-JSON; kimenet: emit-elt spec.ts string + return-code.
|
|
10
|
+
*
|
|
11
|
+
* Külön util, hogy jasmine-spec-elhető legyen (a bin/* I/O-mentes wrap).
|
|
12
|
+
*/
|
|
13
|
+
class DyE2E_CliRunner_Util {
|
|
14
|
+
static parseArgs(argv) {
|
|
15
|
+
if (argv.length === 0) {
|
|
16
|
+
return { command: 'help', flags: {} };
|
|
17
|
+
}
|
|
18
|
+
const command = argv[0];
|
|
19
|
+
const flags = {};
|
|
20
|
+
for (let i = 1; i < argv.length; i++) {
|
|
21
|
+
const arg = argv[i];
|
|
22
|
+
if (arg.startsWith('--')) {
|
|
23
|
+
const key = arg.slice(2);
|
|
24
|
+
const next = argv[i + 1];
|
|
25
|
+
if (next && !next.startsWith('--')) {
|
|
26
|
+
flags[key] = next;
|
|
27
|
+
i++;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
flags[key] = 'true';
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return { command, flags };
|
|
35
|
+
}
|
|
36
|
+
static helpText() {
|
|
37
|
+
return `dye2e — @futdevpro/dynamo-e2e standalone CLI
|
|
38
|
+
|
|
39
|
+
Usage:
|
|
40
|
+
dye2e <command> [flags]
|
|
41
|
+
|
|
42
|
+
Commands:
|
|
43
|
+
generate-form-suite Settings POJO → Playwright form-coverage spec.ts
|
|
44
|
+
generate-viewport-audit Route-list → 7 viewport × theme spec.ts
|
|
45
|
+
generate-cwv-diag Route-list → CWV synthetic measurement spec.ts
|
|
46
|
+
version Print package version
|
|
47
|
+
help This message
|
|
48
|
+
|
|
49
|
+
Flags (generate-form-suite):
|
|
50
|
+
--config <path> Path to JSON config (formSettings, formRoute, ...)
|
|
51
|
+
--out <path> Output spec.ts path
|
|
52
|
+
--stdout Print to stdout instead of writing to disk
|
|
53
|
+
|
|
54
|
+
Flags (generate-viewport-audit):
|
|
55
|
+
--config <path> Path to JSON config (routes, viewports, ...)
|
|
56
|
+
--out <path> Output spec.ts path
|
|
57
|
+
--stdout Print to stdout
|
|
58
|
+
|
|
59
|
+
Flags (generate-cwv-diag):
|
|
60
|
+
--config <path> Path to JSON config (routes, thresholds, ...)
|
|
61
|
+
--out <path> Output spec.ts path
|
|
62
|
+
--stdout Print to stdout
|
|
63
|
+
`;
|
|
64
|
+
}
|
|
65
|
+
static versionText(version) {
|
|
66
|
+
return `@futdevpro/dynamo-e2e ${version}`;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* A 3 generate-parancs köztes-runner-je. A konfig egy JSON-string (filesystem
|
|
70
|
+
* read az `bin/`-ben történik), a kimenet a spec.ts string.
|
|
71
|
+
*/
|
|
72
|
+
static runGenerate(command, configJson) {
|
|
73
|
+
const config = JSON.parse(configJson);
|
|
74
|
+
if (command === 'generate-form-suite') {
|
|
75
|
+
return form_suite_generator_1.DyE2E_FormSuite_Generator.emit(config);
|
|
76
|
+
}
|
|
77
|
+
if (command === 'generate-viewport-audit') {
|
|
78
|
+
return viewport_suite_generator_1.DyE2E_ViewportSuite_Generator.emit(config);
|
|
79
|
+
}
|
|
80
|
+
if (command === 'generate-cwv-diag') {
|
|
81
|
+
return cwv_suite_generator_1.DyE2E_CWVSuite_Generator.emit(config);
|
|
82
|
+
}
|
|
83
|
+
throw new Error(`Unknown command: ${command}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
exports.DyE2E_CliRunner_Util = DyE2E_CliRunner_Util;
|
|
87
|
+
//# sourceMappingURL=cli-runner.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-runner.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":";;;AAAA,kEAAoE;AACpE,0EAA4E;AAC5E,uEAAyE;AAKzE;;;;;GAKG;AACH,MAAa,oBAAoB;IAE/B,MAAM,CAAC,SAAS,CAAC,IAAc;QAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QACxC,CAAC;QACD,MAAM,OAAO,GAAW,IAAI,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAW,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAW,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM,IAAI,GAAuB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7C,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;oBAClB,CAAC,EAAE,CAAC;gBACN,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,QAAQ;QACb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BV,CAAC;IACA,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,OAAe;QAChC,OAAO,yBAAyB,OAAO,EAAE,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,WAAW,CAChB,OAAgF,EAChF,UAAkB;QAElB,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,OAAO,KAAK,qBAAqB,EAAE,CAAC;YACtC,OAAO,gDAAyB,CAAC,IAAI,CAAC,MAAyC,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,OAAO,KAAK,yBAAyB,EAAE,CAAC;YAC1C,OAAO,wDAA6B,CAAC,IAAI,CAAC,MAA6C,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,OAAO,KAAK,mBAAmB,EAAE,CAAC;YACpC,OAAO,8CAAwB,CAAC,IAAI,CAAC,MAAwC,CAAC,CAAC;QACjF,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;IACjD,CAAC;CACF;AA9ED,oDA8EC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { DyE2E_FieldTestCase_DataModel } from '../../contracts/_models/data-models/field-test-case.data-model';
|
|
2
|
+
import { DyE2E_FieldSettings_Shape, DyE2E_FormSettings_Shape } from '../_models/form-settings-shape.interface';
|
|
3
|
+
/**
|
|
4
|
+
* Per-test-case spec-blokk emission. Egyetlen `it(...)` ágat ad vissza.
|
|
5
|
+
*
|
|
6
|
+
* A kibocsátott blokk ÁLTALÁNOS — bármilyen native field-type (input / textarea /
|
|
7
|
+
* select / radio) értelmezi. A field-Settings.type alapján dispatch-elünk:
|
|
8
|
+
* - text / textarea / number / password / date / dateTime → `fill()`
|
|
9
|
+
* - checkbox → `check()` / `uncheck()`
|
|
10
|
+
* - select → DOM-szintű `selectOption()` vagy click-by-data-testid
|
|
11
|
+
* - multiselect / radioSelect → click-by-data-testid `${testId}-${optionValue}`
|
|
12
|
+
* - slider → `<input type=range>` → `fill()` (works in Chromium)
|
|
13
|
+
* - sliderRange / dateRange → `${testId}-start` + `${testId}-end`
|
|
14
|
+
*/
|
|
15
|
+
export declare class DyE2E_FieldEmission_Util {
|
|
16
|
+
/** Egy `it(...)` blokkot ad vissza, behúzva a `test.describe`-on belüli szintre (4 space). */
|
|
17
|
+
static emitTestCase<T>(form: DyE2E_FormSettings_Shape, field: DyE2E_FieldSettings_Shape, testCase: DyE2E_FieldTestCase_DataModel<T>): string;
|
|
18
|
+
private static testCaseTitle;
|
|
19
|
+
/** A bemeneti érték injektálása a UI-on. */
|
|
20
|
+
private static emitInteraction;
|
|
21
|
+
/** A vart kimenet ellenorzese. */
|
|
22
|
+
private static emitAssertion;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=field-emission.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-emission.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/field-emission.util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,gEAAgE,CAAC;AAE/G,OAAO,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAG/G;;;;;;;;;;;GAWG;AACH,qBAAa,wBAAwB;IAEnC,8FAA8F;IAC9F,MAAM,CAAC,YAAY,CAAC,CAAC,EACnB,IAAI,EAAE,wBAAwB,EAC9B,KAAK,EAAE,yBAAyB,EAChC,QAAQ,EAAE,6BAA6B,CAAC,CAAC,CAAC,GACzC,MAAM;IAYT,OAAO,CAAC,MAAM,CAAC,aAAa;IAY5B,4CAA4C;IAC5C,OAAO,CAAC,MAAM,CAAC,eAAe;IAoD9B,kCAAkC;IAClC,OAAO,CAAC,MAAM,CAAC,aAAa;CA2B7B"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyE2E_FieldEmission_Util = void 0;
|
|
4
|
+
const test_expectation_type_enum_1 = require("../../contracts/_enums/test-expectation-type.enum");
|
|
5
|
+
const test_id_util_1 = require("../../contracts/_collections/utils/test-id.util");
|
|
6
|
+
const spec_emission_util_1 = require("./spec-emission.util");
|
|
7
|
+
/**
|
|
8
|
+
* Per-test-case spec-blokk emission. Egyetlen `it(...)` ágat ad vissza.
|
|
9
|
+
*
|
|
10
|
+
* A kibocsátott blokk ÁLTALÁNOS — bármilyen native field-type (input / textarea /
|
|
11
|
+
* select / radio) értelmezi. A field-Settings.type alapján dispatch-elünk:
|
|
12
|
+
* - text / textarea / number / password / date / dateTime → `fill()`
|
|
13
|
+
* - checkbox → `check()` / `uncheck()`
|
|
14
|
+
* - select → DOM-szintű `selectOption()` vagy click-by-data-testid
|
|
15
|
+
* - multiselect / radioSelect → click-by-data-testid `${testId}-${optionValue}`
|
|
16
|
+
* - slider → `<input type=range>` → `fill()` (works in Chromium)
|
|
17
|
+
* - sliderRange / dateRange → `${testId}-start` + `${testId}-end`
|
|
18
|
+
*/
|
|
19
|
+
class DyE2E_FieldEmission_Util {
|
|
20
|
+
/** Egy `it(...)` blokkot ad vissza, behúzva a `test.describe`-on belüli szintre (4 space). */
|
|
21
|
+
static emitTestCase(form, field, testCase) {
|
|
22
|
+
const fieldTestId = field.testId ?? test_id_util_1.DyE2E_TestId_Util.field(form.key, field.key);
|
|
23
|
+
const interaction = DyE2E_FieldEmission_Util.emitInteraction(field, testCase, fieldTestId);
|
|
24
|
+
const assertion = DyE2E_FieldEmission_Util.emitAssertion(field, testCase, fieldTestId);
|
|
25
|
+
const title = DyE2E_FieldEmission_Util.testCaseTitle(field, testCase);
|
|
26
|
+
return `test('${spec_emission_util_1.DyE2E_SpecEmission_Util.escapeString(title)}', async ({ page }): Promise<void> => {
|
|
27
|
+
${spec_emission_util_1.DyE2E_SpecEmission_Util.indent(interaction, 1)}
|
|
28
|
+
${spec_emission_util_1.DyE2E_SpecEmission_Util.indent(assertion, 1)}
|
|
29
|
+
});`;
|
|
30
|
+
}
|
|
31
|
+
static testCaseTitle(field, testCase) {
|
|
32
|
+
const exp = testCase.expectation === test_expectation_type_enum_1.DyE2E_TestExpectation_Type.valid ? 'valid' :
|
|
33
|
+
testCase.expectation === test_expectation_type_enum_1.DyE2E_TestExpectation_Type.invalid ? `invalid:${testCase.expectedErrorKey ?? '?'}` :
|
|
34
|
+
testCase.expectation === test_expectation_type_enum_1.DyE2E_TestExpectation_Type.transformed ? 'transformed' :
|
|
35
|
+
'skip';
|
|
36
|
+
return `field[${field.key}] ${testCase.id} → ${exp} — ${testCase.description}`;
|
|
37
|
+
}
|
|
38
|
+
/** A bemeneti érték injektálása a UI-on. */
|
|
39
|
+
static emitInteraction(field, testCase, fieldTestId) {
|
|
40
|
+
const type = field.type;
|
|
41
|
+
const valueLit = spec_emission_util_1.DyE2E_SpecEmission_Util.valueLiteral(testCase.inputValue);
|
|
42
|
+
if (type === 'checkbox') {
|
|
43
|
+
const targetChecked = !!testCase.inputValue;
|
|
44
|
+
return `const checkbox: Locator = page.getByTestId('${fieldTestId}');
|
|
45
|
+
await checkbox.${targetChecked ? 'check' : 'uncheck'}();
|
|
46
|
+
await checkbox.blur();`;
|
|
47
|
+
}
|
|
48
|
+
if (type === 'select' || type === 'multiselect' || type === 'radioSelect') {
|
|
49
|
+
// Az inputValue index → option-érték a Settings.options-en keresztül.
|
|
50
|
+
const indexes = Array.isArray(testCase.inputValue)
|
|
51
|
+
? testCase.inputValue
|
|
52
|
+
: [testCase.inputValue ?? -1];
|
|
53
|
+
const optionCount = field.options?.length ?? 0;
|
|
54
|
+
const concreteIndexes = indexes.map((i) => i === -2 ? optionCount - 1 :
|
|
55
|
+
i === -3 ? -3 :
|
|
56
|
+
i);
|
|
57
|
+
return `// options index → testId-suffix selection
|
|
58
|
+
const fieldRoot: Locator = page.locator('[data-testid="${fieldTestId}"], dynamo-${type === 'radioSelect' ? 'radio-select' : type}-field-new').first();
|
|
59
|
+
${concreteIndexes.map((idx, i) => idx >= 0
|
|
60
|
+
? `// option index ${idx} (case-input[${i}])`
|
|
61
|
+
: `// sentinel ${idx} — generator-runtime should clamp to options.length`).join('\n')}
|
|
62
|
+
// Wave-1: explicit selector-pattern is per-consumer; szándékosan minimalista.`;
|
|
63
|
+
}
|
|
64
|
+
if (type === 'sliderRange' || type === 'dateRange') {
|
|
65
|
+
const startVal = testCase.inputValue?.start ?? null;
|
|
66
|
+
const endVal = testCase.inputValue?.end ?? null;
|
|
67
|
+
return `const startInput: Locator = page.getByTestId('${fieldTestId}-start');
|
|
68
|
+
const endInput: Locator = page.getByTestId('${fieldTestId}-end');
|
|
69
|
+
await startInput.fill(${spec_emission_util_1.DyE2E_SpecEmission_Util.valueLiteral(String(startVal ?? ''))});
|
|
70
|
+
await endInput.fill(${spec_emission_util_1.DyE2E_SpecEmission_Util.valueLiteral(String(endVal ?? ''))});
|
|
71
|
+
await endInput.blur();`;
|
|
72
|
+
}
|
|
73
|
+
// text, textarea, password, number, slider, date, dateTime
|
|
74
|
+
return `const input: Locator = page.getByTestId('${fieldTestId}');
|
|
75
|
+
await input.fill(${typeof testCase.inputValue === 'string' ? valueLit : `String(${valueLit} ?? '')`});
|
|
76
|
+
await input.blur();`;
|
|
77
|
+
}
|
|
78
|
+
/** A vart kimenet ellenorzese. */
|
|
79
|
+
static emitAssertion(field, testCase, fieldTestId) {
|
|
80
|
+
if (testCase.expectation === test_expectation_type_enum_1.DyE2E_TestExpectation_Type.valid) {
|
|
81
|
+
// Nincs error-msg vagy red-border.
|
|
82
|
+
return `const fieldRoot: Locator = page.locator('[data-testid="${fieldTestId}"]').locator('xpath=ancestor-or-self::*[contains(@class,"field") or starts-with(local-name(),"dynamo-")]').first();
|
|
83
|
+
await expect(fieldRoot.locator('.text-red-400.mt-1')).toHaveCount(0);`;
|
|
84
|
+
}
|
|
85
|
+
if (testCase.expectation === test_expectation_type_enum_1.DyE2E_TestExpectation_Type.invalid) {
|
|
86
|
+
// Red-border + first-error-message.
|
|
87
|
+
return `const fieldRoot: Locator = page.locator('[data-testid="${fieldTestId}"]').locator('xpath=ancestor-or-self::*[starts-with(local-name(),"dynamo-")]').first();
|
|
88
|
+
await expect(fieldRoot.locator('.text-red-400.mt-1').first()).toBeVisible();${testCase.expectedErrorKey
|
|
89
|
+
? `\n// expectedErrorKey: ${testCase.expectedErrorKey}`
|
|
90
|
+
: ''}`;
|
|
91
|
+
}
|
|
92
|
+
if (testCase.expectation === test_expectation_type_enum_1.DyE2E_TestExpectation_Type.transformed) {
|
|
93
|
+
const transformedLit = spec_emission_util_1.DyE2E_SpecEmission_Util.valueLiteral(testCase.expectedTransformedValue ?? null);
|
|
94
|
+
return `// Transformed expectation: data_$ === ${transformedLit}
|
|
95
|
+
// Wave-1: a concrete data_$ access pattern per-consumer; placeholder marker:
|
|
96
|
+
expect(true).toBe(true);`;
|
|
97
|
+
}
|
|
98
|
+
return `// case skipped (no assertion)`;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
exports.DyE2E_FieldEmission_Util = DyE2E_FieldEmission_Util;
|
|
102
|
+
//# sourceMappingURL=field-emission.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-emission.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/field-emission.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DyE2E_FormSettings_Shape } from '../_models/form-settings-shape.interface';
|
|
2
|
+
/**
|
|
3
|
+
* Form-szintű orchestrator tesztek (submit-empty / submit-valid / partial-fill /
|
|
4
|
+
* reset / disabled).
|
|
5
|
+
*/
|
|
6
|
+
export declare class DyE2E_FormLevelEmission_Util {
|
|
7
|
+
static emitSubmitEmpty(form: DyE2E_FormSettings_Shape): string;
|
|
8
|
+
static emitSubmitValid(form: DyE2E_FormSettings_Shape): string;
|
|
9
|
+
static emitFormDisabled(form: DyE2E_FormSettings_Shape): string;
|
|
10
|
+
static emitAll(form: DyE2E_FormSettings_Shape): string;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=form-level-emission.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-level-emission.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/form-level-emission.util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAGpF;;;GAGG;AACH,qBAAa,4BAA4B;IAEvC,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM;IAa9D,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM;IAQ9D,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM;IAM/D,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM;CAOvD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyE2E_FormLevelEmission_Util = void 0;
|
|
4
|
+
const test_id_util_1 = require("../../contracts/_collections/utils/test-id.util");
|
|
5
|
+
/**
|
|
6
|
+
* Form-szintű orchestrator tesztek (submit-empty / submit-valid / partial-fill /
|
|
7
|
+
* reset / disabled).
|
|
8
|
+
*/
|
|
9
|
+
class DyE2E_FormLevelEmission_Util {
|
|
10
|
+
static emitSubmitEmpty(form) {
|
|
11
|
+
const submitTestId = test_id_util_1.DyE2E_TestId_Util.formSubmit(form.key);
|
|
12
|
+
const requiredFieldCount = form.fields.filter((f) => f.required === true).length;
|
|
13
|
+
return `test('form-level: submit empty form ${requiredFieldCount > 0 ? '→ required-validators fire' : '→ submits'}', async ({ page }): Promise<void> => {
|
|
14
|
+
const submit: Locator = page.getByTestId('${submitTestId}');
|
|
15
|
+
await submit.click();
|
|
16
|
+
${requiredFieldCount > 0
|
|
17
|
+
? ` // ${requiredFieldCount} required field(s) — error-msgek vizualisak
|
|
18
|
+
await expect(page.locator('.text-red-400.mt-1').first()).toBeVisible();`
|
|
19
|
+
: ` // no required fields — submit goes through`}
|
|
20
|
+
});`;
|
|
21
|
+
}
|
|
22
|
+
static emitSubmitValid(form) {
|
|
23
|
+
return `test('form-level: fill all fields with valid values → submit', async ({ page }): Promise<void> => {
|
|
24
|
+
// Wave-1: per-form valid-set generation per-consumer; placeholder ensures
|
|
25
|
+
// the form-level orchestrator structure exists.
|
|
26
|
+
expect(true).toBe(true);
|
|
27
|
+
});`;
|
|
28
|
+
}
|
|
29
|
+
static emitFormDisabled(form) {
|
|
30
|
+
return `test('form-level: disabled-state shows no error + submit disabled', async ({ page }): Promise<void> => {
|
|
31
|
+
expect(true).toBe(true);
|
|
32
|
+
});`;
|
|
33
|
+
}
|
|
34
|
+
static emitAll(form) {
|
|
35
|
+
return [
|
|
36
|
+
DyE2E_FormLevelEmission_Util.emitSubmitEmpty(form),
|
|
37
|
+
DyE2E_FormLevelEmission_Util.emitSubmitValid(form),
|
|
38
|
+
DyE2E_FormLevelEmission_Util.emitFormDisabled(form),
|
|
39
|
+
].join('\n\n');
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.DyE2E_FormLevelEmission_Util = DyE2E_FormLevelEmission_Util;
|
|
43
|
+
//# sourceMappingURL=form-level-emission.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-level-emission.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/form-level-emission.util.ts"],"names":[],"mappings":";;;AAAA,kFAAoF;AAIpF;;;GAGG;AACH,MAAa,4BAA4B;IAEvC,MAAM,CAAC,eAAe,CAAC,IAA8B;QACnD,MAAM,YAAY,GAAW,gCAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpE,MAAM,kBAAkB,GAAW,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC;QAClG,OAAO,uCAAuC,kBAAkB,GAAG,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,WAAW;8CACvE,YAAY;;EAExD,kBAAkB,GAAG,CAAC;YACtB,CAAC,CAAC,QAAQ,kBAAkB;0EAC4C;YACxE,CAAC,CAAC,+CAA+C;IAC/C,CAAC;IACH,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAA8B;QACnD,OAAO;;;;IAIP,CAAC;IACH,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,IAA8B;QACpD,OAAO;;IAEP,CAAC;IACH,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,IAA8B;QAC3C,OAAO;YACL,4BAA4B,CAAC,eAAe,CAAC,IAAI,CAAC;YAClD,4BAA4B,CAAC,eAAe,CAAC,IAAI,CAAC;YAClD,4BAA4B,CAAC,gBAAgB,CAAC,IAAI,CAAC;SACpD,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC;CACF;AApCD,oEAoCC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Egyszerű string-builder a spec.ts emission-hez. NEM eval-alapú template-engine —
|
|
3
|
+
* csak `indent`, `block`, és `escape` util-ok.
|
|
4
|
+
*
|
|
5
|
+
* Az indent szóköz-szám (default `2`). A kiadott string-et úgy formálódik, hogy
|
|
6
|
+
* a fogyasztó projekt prettier-je tudja, de már önmagában is olvasható.
|
|
7
|
+
*/
|
|
8
|
+
export declare class DyE2E_SpecEmission_Util {
|
|
9
|
+
/**
|
|
10
|
+
* Egy `string`-ben minden newline elé pontosan annyi szóköz kerül, amennyi
|
|
11
|
+
* `level * indentSize`. Az első sor is indent-elődik.
|
|
12
|
+
*/
|
|
13
|
+
static indent(text: string, level?: number, indentSize?: number): string;
|
|
14
|
+
/** TypeScript string-literal-ra escape-eli az inputot (single-quoted). */
|
|
15
|
+
static escapeString(s: string): string;
|
|
16
|
+
/** TypeScript értékreprezentáció — string, number, boolean, null, array, object. */
|
|
17
|
+
static valueLiteral(v: unknown): string;
|
|
18
|
+
/** Header-comment block az emit-elt spec.ts tetejéhez. */
|
|
19
|
+
static headerComment(formKey: string, route: string, generatedAt: string, extra?: string): string;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=spec-emission.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec-emission.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/spec-emission.util.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,qBAAa,uBAAuB;IAClC;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,EAAE,UAAU,GAAE,MAAU,GAAG,MAAM;IAQ9E,0EAA0E;IAC1E,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAStC,oFAAoF;IACpF,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM;IAyBvC,0DAA0D;IAC1D,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM;CAalG"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyE2E_SpecEmission_Util = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Egyszerű string-builder a spec.ts emission-hez. NEM eval-alapú template-engine —
|
|
6
|
+
* csak `indent`, `block`, és `escape` util-ok.
|
|
7
|
+
*
|
|
8
|
+
* Az indent szóköz-szám (default `2`). A kiadott string-et úgy formálódik, hogy
|
|
9
|
+
* a fogyasztó projekt prettier-je tudja, de már önmagában is olvasható.
|
|
10
|
+
*/
|
|
11
|
+
class DyE2E_SpecEmission_Util {
|
|
12
|
+
/**
|
|
13
|
+
* Egy `string`-ben minden newline elé pontosan annyi szóköz kerül, amennyi
|
|
14
|
+
* `level * indentSize`. Az első sor is indent-elődik.
|
|
15
|
+
*/
|
|
16
|
+
static indent(text, level = 1, indentSize = 2) {
|
|
17
|
+
const prefix = ' '.repeat(level * indentSize);
|
|
18
|
+
return text
|
|
19
|
+
.split('\n')
|
|
20
|
+
.map((line) => (line.length === 0 ? line : prefix + line))
|
|
21
|
+
.join('\n');
|
|
22
|
+
}
|
|
23
|
+
/** TypeScript string-literal-ra escape-eli az inputot (single-quoted). */
|
|
24
|
+
static escapeString(s) {
|
|
25
|
+
return s
|
|
26
|
+
.replace(/\\/g, '\\\\')
|
|
27
|
+
.replace(/'/g, "\\'")
|
|
28
|
+
.replace(/\n/g, '\\n')
|
|
29
|
+
.replace(/\r/g, '\\r')
|
|
30
|
+
.replace(/\t/g, '\\t');
|
|
31
|
+
}
|
|
32
|
+
/** TypeScript értékreprezentáció — string, number, boolean, null, array, object. */
|
|
33
|
+
static valueLiteral(v) {
|
|
34
|
+
if (v === null) {
|
|
35
|
+
return 'null';
|
|
36
|
+
}
|
|
37
|
+
if (v === undefined) {
|
|
38
|
+
return 'undefined';
|
|
39
|
+
}
|
|
40
|
+
if (typeof v === 'string') {
|
|
41
|
+
return `'${DyE2E_SpecEmission_Util.escapeString(v)}'`;
|
|
42
|
+
}
|
|
43
|
+
if (typeof v === 'number' || typeof v === 'boolean') {
|
|
44
|
+
return String(v);
|
|
45
|
+
}
|
|
46
|
+
if (Array.isArray(v)) {
|
|
47
|
+
return `[${v.map((item) => DyE2E_SpecEmission_Util.valueLiteral(item)).join(', ')}]`;
|
|
48
|
+
}
|
|
49
|
+
if (typeof v === 'object') {
|
|
50
|
+
const entries = Object.entries(v).map(([k, val]) => `${k}: ${DyE2E_SpecEmission_Util.valueLiteral(val)}`);
|
|
51
|
+
return `{ ${entries.join(', ')} }`;
|
|
52
|
+
}
|
|
53
|
+
return 'undefined';
|
|
54
|
+
}
|
|
55
|
+
/** Header-comment block az emit-elt spec.ts tetejéhez. */
|
|
56
|
+
static headerComment(formKey, route, generatedAt, extra) {
|
|
57
|
+
const extraLine = extra ? `\n * ${extra}` : '';
|
|
58
|
+
return `/**
|
|
59
|
+
* Auto-generated by @futdevpro/dynamo-e2e — FormSuite Generator
|
|
60
|
+
* Form key: ${formKey}
|
|
61
|
+
* Route: ${route}
|
|
62
|
+
* Built at: ${generatedAt}${extraLine}
|
|
63
|
+
*
|
|
64
|
+
* DO NOT EDIT BY HAND. Re-emit via \`dc e2e generate-form-suite\` or
|
|
65
|
+
* \`DyE2E_FormSuite_Generator.emit({...})\` consumer-script.
|
|
66
|
+
*/
|
|
67
|
+
`;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.DyE2E_SpecEmission_Util = DyE2E_SpecEmission_Util;
|
|
71
|
+
//# sourceMappingURL=spec-emission.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec-emission.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/spec-emission.util.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH,MAAa,uBAAuB;IAClC;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,IAAY,EAAE,QAAgB,CAAC,EAAE,aAAqB,CAAC;QACnE,MAAM,MAAM,GAAW,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;QACtD,OAAO,IAAI;aACR,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAY,EAAU,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;aACzE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,0EAA0E;IAC1E,MAAM,CAAC,YAAY,CAAC,CAAS;QAC3B,OAAO,CAAC;aACL,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;aACtB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;aACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;aACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;aACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,oFAAoF;IACpF,MAAM,CAAC,YAAY,CAAC,CAAU;QAC5B,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACf,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,IAAI,uBAAuB,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC;QACxD,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;YACpD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAa,EAAU,EAAE,CAAC,uBAAuB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QACxG,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAa,MAAM,CAAC,OAAO,CAAC,CAA4B,CAAC,CAAC,GAAG,CACxE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAoB,EAAU,EAAE,CAAC,GAAG,CAAC,KAAK,uBAAuB,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAC9F,CAAC;YACF,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACrC,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,0DAA0D;IAC1D,MAAM,CAAC,aAAa,CAAC,OAAe,EAAE,KAAa,EAAE,WAAmB,EAAE,KAAc;QACtF,MAAM,SAAS,GAAW,KAAK,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,OAAO;;eAEI,OAAO;eACP,KAAK;eACL,WAAW,GAAG,SAAS;;;;;CAKrC,CAAC;IACA,CAAC;CACF;AA/DD,0DA+DC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { DyE2E_TestRunMode_Type } from '../../contracts/_enums/test-run-mode-type.enum';
|
|
2
|
+
import { DyE2E_FieldTestCase_DataModel } from '../../contracts/_models/data-models/field-test-case.data-model';
|
|
3
|
+
import { DyE2E_FieldTestSuite_Override } from '../../contracts/_models/interfaces/form-test-suite-settings.interface';
|
|
4
|
+
import { DyE2E_FieldSettings_Shape } from '../_models/form-settings-shape.interface';
|
|
5
|
+
/**
|
|
6
|
+
* Eldönti melyik test-case-ek emit-elődnek a kibocsátott spec-be — a `runMode`
|
|
7
|
+
* + `Settings.validators[]` + per-field override-ok együttese alapján.
|
|
8
|
+
*
|
|
9
|
+
* Ez ahol a generator INTELLIGENS — a field-type-specifikus test-case-set-et
|
|
10
|
+
* a Settings konkrét értékeihez SHAPE-ELI (pl. `oversize` test-case
|
|
11
|
+
* `maxLength`-re igazítja `Settings.maxLength`-ből).
|
|
12
|
+
*/
|
|
13
|
+
export declare class DyE2E_TestCaseFilter_Util {
|
|
14
|
+
/** A `runMode === smoke`-on belüli auto-keep-szignatúrák. */
|
|
15
|
+
private static readonly SMOKE_KEEP_TYPES;
|
|
16
|
+
/** A `runMode === nightly` extra-keep-szignatúrái. */
|
|
17
|
+
private static readonly NIGHTLY_EXTRA_TYPES;
|
|
18
|
+
/**
|
|
19
|
+
* Megszűri + adaptálja a curated test-case-eket a Settings + runMode + override
|
|
20
|
+
* kombinációhoz.
|
|
21
|
+
*/
|
|
22
|
+
static filter<T>(cases: DyE2E_FieldTestCase_DataModel<T>[], fieldSettings: DyE2E_FieldSettings_Shape, runMode: DyE2E_TestRunMode_Type, override?: DyE2E_FieldTestSuite_Override): DyE2E_FieldTestCase_DataModel<T>[];
|
|
23
|
+
private static keepByRunMode;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=test-case-filter.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-case-filter.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/test-case-filter.util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,6BAA6B,EAAE,MAAM,gEAAgE,CAAC;AAC/G,OAAO,EAAE,6BAA6B,EAAE,MAAM,uEAAuE,CAAC;AACtH,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAErF;;;;;;;GAOG;AACH,qBAAa,yBAAyB;IAEpC,6DAA6D;IAC7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CASrC;IAEH,sDAAsD;IACtD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAMxC;IAEH;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,EACb,KAAK,EAAE,6BAA6B,CAAC,CAAC,CAAC,EAAE,EACzC,aAAa,EAAE,yBAAyB,EACxC,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,CAAC,EAAE,6BAA6B,GACvC,6BAA6B,CAAC,CAAC,CAAC,EAAE;IAqFrC,OAAO,CAAC,MAAM,CAAC,aAAa;CAa7B"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyE2E_TestCaseFilter_Util = void 0;
|
|
4
|
+
const field_test_case_type_enum_1 = require("../../contracts/_enums/field-test-case-type.enum");
|
|
5
|
+
const test_expectation_type_enum_1 = require("../../contracts/_enums/test-expectation-type.enum");
|
|
6
|
+
const test_run_mode_type_enum_1 = require("../../contracts/_enums/test-run-mode-type.enum");
|
|
7
|
+
const field_test_case_data_model_1 = require("../../contracts/_models/data-models/field-test-case.data-model");
|
|
8
|
+
/**
|
|
9
|
+
* Eldönti melyik test-case-ek emit-elődnek a kibocsátott spec-be — a `runMode`
|
|
10
|
+
* + `Settings.validators[]` + per-field override-ok együttese alapján.
|
|
11
|
+
*
|
|
12
|
+
* Ez ahol a generator INTELLIGENS — a field-type-specifikus test-case-set-et
|
|
13
|
+
* a Settings konkrét értékeihez SHAPE-ELI (pl. `oversize` test-case
|
|
14
|
+
* `maxLength`-re igazítja `Settings.maxLength`-ből).
|
|
15
|
+
*/
|
|
16
|
+
class DyE2E_TestCaseFilter_Util {
|
|
17
|
+
/** A `runMode === smoke`-on belüli auto-keep-szignatúrák. */
|
|
18
|
+
static SMOKE_KEEP_TYPES = new Set([
|
|
19
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.emptyInput,
|
|
20
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.ascii,
|
|
21
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.zero,
|
|
22
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.one,
|
|
23
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.todayIso,
|
|
24
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.firstOption,
|
|
25
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.toggleOnce,
|
|
26
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.exactMin,
|
|
27
|
+
]);
|
|
28
|
+
/** A `runMode === nightly` extra-keep-szignatúrái. */
|
|
29
|
+
static NIGHTLY_EXTRA_TYPES = new Set([
|
|
30
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.rapidToggle,
|
|
31
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.triplePaste,
|
|
32
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.doubleClick,
|
|
33
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.dstSpringForward,
|
|
34
|
+
field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.dstFallBack,
|
|
35
|
+
]);
|
|
36
|
+
/**
|
|
37
|
+
* Megszűri + adaptálja a curated test-case-eket a Settings + runMode + override
|
|
38
|
+
* kombinációhoz.
|
|
39
|
+
*/
|
|
40
|
+
static filter(cases, fieldSettings, runMode, override) {
|
|
41
|
+
let result = cases.filter((c) => DyE2E_TestCaseFilter_Util.keepByRunMode(c, runMode));
|
|
42
|
+
// Required-validator awareness: ha a Settings NEM required, eldobjuk a
|
|
43
|
+
// required-shape eseteket (where expectation === invalid + expectedErrorKey === 'required').
|
|
44
|
+
if (!fieldSettings.required) {
|
|
45
|
+
result = result.filter((c) => c.expectedErrorKey !== 'required' || c.expectation !== test_expectation_type_enum_1.DyE2E_TestExpectation_Type.invalid);
|
|
46
|
+
}
|
|
47
|
+
// MinLength / maxLength shaping.
|
|
48
|
+
if (typeof fieldSettings.maxLength === 'number') {
|
|
49
|
+
result = result.map((c) => {
|
|
50
|
+
if (c.type === field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.oversize && typeof c.inputValue === 'string') {
|
|
51
|
+
const oversizedString = 'a'.repeat(fieldSettings.maxLength + 1);
|
|
52
|
+
return new field_test_case_data_model_1.DyE2E_FieldTestCase_DataModel({ ...c, inputValue: oversizedString });
|
|
53
|
+
}
|
|
54
|
+
return c;
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
if (typeof fieldSettings.minLength === 'number') {
|
|
58
|
+
result = result.map((c) => {
|
|
59
|
+
if (c.type === field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.undersize && typeof c.inputValue === 'string') {
|
|
60
|
+
const minLen = fieldSettings.minLength;
|
|
61
|
+
const undersizedString = 'a'.repeat(Math.max(0, minLen - 1));
|
|
62
|
+
return new field_test_case_data_model_1.DyE2E_FieldTestCase_DataModel({ ...c, inputValue: undersizedString });
|
|
63
|
+
}
|
|
64
|
+
return c;
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
// Min / max (numerikus) shaping a slider / number-re.
|
|
68
|
+
if (typeof fieldSettings.min === 'number') {
|
|
69
|
+
result = result.map((c) => {
|
|
70
|
+
if (c.type === field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.exactMin) {
|
|
71
|
+
return new field_test_case_data_model_1.DyE2E_FieldTestCase_DataModel({ ...c, inputValue: fieldSettings.min });
|
|
72
|
+
}
|
|
73
|
+
if (c.type === field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.belowMin) {
|
|
74
|
+
return new field_test_case_data_model_1.DyE2E_FieldTestCase_DataModel({ ...c, inputValue: String(fieldSettings.min - 1) });
|
|
75
|
+
}
|
|
76
|
+
return c;
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
if (typeof fieldSettings.max === 'number') {
|
|
80
|
+
result = result.map((c) => {
|
|
81
|
+
if (c.type === field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.exactMax) {
|
|
82
|
+
return new field_test_case_data_model_1.DyE2E_FieldTestCase_DataModel({ ...c, inputValue: fieldSettings.max });
|
|
83
|
+
}
|
|
84
|
+
if (c.type === field_test_case_type_enum_1.DyE2E_FieldTestCase_Type.aboveMax) {
|
|
85
|
+
return new field_test_case_data_model_1.DyE2E_FieldTestCase_DataModel({ ...c, inputValue: String(fieldSettings.max + 1) });
|
|
86
|
+
}
|
|
87
|
+
return c;
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
// Override-feldolgozás.
|
|
91
|
+
if (override) {
|
|
92
|
+
if (override.onlyCases && override.onlyCases.length > 0) {
|
|
93
|
+
const whitelist = new Set(override.onlyCases);
|
|
94
|
+
result = result.filter((c) => whitelist.has(c.type));
|
|
95
|
+
}
|
|
96
|
+
else if (override.skipCases && override.skipCases.length > 0) {
|
|
97
|
+
const blacklist = new Set(override.skipCases);
|
|
98
|
+
result = result.filter((c) => !blacklist.has(c.type));
|
|
99
|
+
}
|
|
100
|
+
if (override.customCases && override.customCases.length > 0) {
|
|
101
|
+
for (const custom of override.customCases) {
|
|
102
|
+
result.push(new field_test_case_data_model_1.DyE2E_FieldTestCase_DataModel({
|
|
103
|
+
id: `custom:${custom.type}`,
|
|
104
|
+
type: custom.type,
|
|
105
|
+
description: custom.description ?? `custom ${custom.type}`,
|
|
106
|
+
inputValue: (custom.inputValue ?? null),
|
|
107
|
+
expectation: test_expectation_type_enum_1.DyE2E_TestExpectation_Type.valid,
|
|
108
|
+
notes: custom.customSnippet,
|
|
109
|
+
}));
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return result;
|
|
114
|
+
}
|
|
115
|
+
static keepByRunMode(testCase, runMode) {
|
|
116
|
+
if (runMode === test_run_mode_type_enum_1.DyE2E_TestRunMode_Type.smoke) {
|
|
117
|
+
return DyE2E_TestCaseFilter_Util.SMOKE_KEEP_TYPES.has(testCase.type);
|
|
118
|
+
}
|
|
119
|
+
if (runMode === test_run_mode_type_enum_1.DyE2E_TestRunMode_Type.full) {
|
|
120
|
+
return !DyE2E_TestCaseFilter_Util.NIGHTLY_EXTRA_TYPES.has(testCase.type);
|
|
121
|
+
}
|
|
122
|
+
// nightly
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
exports.DyE2E_TestCaseFilter_Util = DyE2E_TestCaseFilter_Util;
|
|
127
|
+
//# sourceMappingURL=test-case-filter.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-case-filter.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/test-case-filter.util.ts"],"names":[],"mappings":"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"}
|