Skip to content

feat(design): allow tag override in builder #645

feat(design): allow tag override in builder

feat(design): allow tag override in builder #645

GitHub Actions / UT Tests report-ubuntu-latest succeeded Nov 18, 2024 in 0s

120 passed, 0 failed and 0 skipped

Tests passed successfully

Report Passed Failed Skipped Time
apps/showcase/dist-test/junit.xml 27✅ 67s
apps/vscode-extension/dist-test/junit.xml 1✅ 4s
packages/@o3r/design/dist-test/junit.xml 92✅ 17s

✅ apps/showcase/dist-test/junit.xml

27 tests were completed in 67s with 27 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
AppComponent 1✅ 4s
BasicPresComponent 1✅ 4s
ComponentReplacementComponent 1✅ 4s
ComponentReplacementPresComponent 1✅ 29s
ConfigurationComponent 1✅ 4s
ConfigurationPresComponent 1✅ 3s
CopyTextPresComponent 1✅ 2s
DatePickerHebrewInputPresComponent 1✅ 3s
DatePickerInputPresComponent 1✅ 3s
DesignTokenComponent 1✅ 4s
DesignTokenPresComponent 1✅ 4s
DynamicContentComponent 1✅ 5s
DynamicContentPresComponent 1✅ 3s
HomeComponent 1✅ 4s
InPageNavPresComponent 1✅ 3s
LocalizationComponent 1✅ 5s
LocalizationPresComponent 1✅ 5s
OtterPickerPresComponent 1✅ 2s
PlaceholderComponent 1✅ 5s
PlaceholderPresComponent 1✅ 3s
RulesEngineComponent 1✅ 40s
RulesEnginePresComponent 1✅ 31s
RunAppLocallyComponent 1✅ 4s
ScrollBackTopPresComponent 1✅ 824ms
SdkComponent 1✅ 5s
SdkPresComponent 1✅ 3s
SidenavPresComponent 1✅ 2s

✅ AppComponent

apps/showcase/src/app/app.component.spec.ts
  ✅ AppComponent should create the app

✅ BasicPresComponent

apps/showcase/src/components/showcase/basic/basic-pres.spec.ts
  ✅ BasicPresComponent should create

✅ ComponentReplacementComponent

apps/showcase/src/app/component-replacement/component-replacement.spec.ts
  ✅ ComponentReplacementComponent should create

✅ ComponentReplacementPresComponent

apps/showcase/src/components/showcase/component-replacement/component-replacement-pres.spec.ts
  ✅ ComponentReplacementPresComponent should create

✅ ConfigurationComponent

apps/showcase/src/app/configuration/configuration.spec.ts
  ✅ ConfigurationComponent should create

✅ ConfigurationPresComponent

apps/showcase/src/components/showcase/configuration/configuration-pres.spec.ts
  ✅ ConfigurationPresComponent should create

✅ CopyTextPresComponent

apps/showcase/src/components/utilities/copy-text/copy-text-pres.spec.ts
  ✅ CopyTextPresComponent should create

✅ DatePickerHebrewInputPresComponent

apps/showcase/src/components/utilities/date-picker-input-hebrew/date-picker-input-hebrew-pres.spec.ts
  ✅ DatePickerHebrewInputPresComponent should create

✅ DatePickerInputPresComponent

apps/showcase/src/components/utilities/date-picker-input/date-picker-input-pres.spec.ts
  ✅ DatePickerInputPresComponent should create

✅ DesignTokenComponent

apps/showcase/src/app/design-token/design-token.spec.ts
  ✅ DesignTokenComponent should create

✅ DesignTokenPresComponent

apps/showcase/src/components/showcase/design-token/design-token-pres.spec.ts
  ✅ DesignTokenPresComponent should create

✅ DynamicContentComponent

apps/showcase/src/app/dynamic-content/dynamic-content.spec.ts
  ✅ DynamicContentComponent should create

✅ DynamicContentPresComponent

apps/showcase/src/components/showcase/dynamic-content/dynamic-content-pres.spec.ts
  ✅ DynamicContentPresComponent should create

✅ HomeComponent

apps/showcase/src/app/home/home.spec.ts
  ✅ HomeComponent should create

✅ InPageNavPresComponent

apps/showcase/src/components/utilities/in-page-nav/in-page-nav-pres.spec.ts
  ✅ InPageNavPresComponent should create

✅ LocalizationComponent

apps/showcase/src/app/localization/localization.spec.ts
  ✅ LocalizationComponent should create

✅ LocalizationPresComponent

apps/showcase/src/components/showcase/localization/localization-pres.spec.ts
  ✅ LocalizationPresComponent should create

✅ OtterPickerPresComponent

apps/showcase/src/components/utilities/otter-picker/otter-picker-pres.spec.ts
  ✅ OtterPickerPresComponent should create

✅ PlaceholderComponent

apps/showcase/src/app/placeholder/placeholder.spec.ts
  ✅ PlaceholderComponent should create

✅ PlaceholderPresComponent

apps/showcase/src/components/showcase/placeholder/placeholder-pres.spec.ts
  ✅ PlaceholderPresComponent should create

✅ RulesEngineComponent

apps/showcase/src/app/rules-engine/rules-engine.spec.ts
  ✅ RulesEngineComponent should create

✅ RulesEnginePresComponent

apps/showcase/src/components/showcase/rules-engine/rules-engine-pres.spec.ts
  ✅ RulesEnginePresComponent should create

✅ RunAppLocallyComponent

apps/showcase/src/app/run-app-locally/run-app-locally.spec.ts
  ✅ RunAppLocallyComponent should create

✅ ScrollBackTopPresComponent

apps/showcase/src/components/utilities/scroll-back-top/scroll-back-top-pres.spec.ts
  ✅ ScrollBackTopPresComponent should create

✅ SdkComponent

apps/showcase/src/app/sdk/sdk.spec.ts
  ✅ SdkComponent should create

✅ SdkPresComponent

apps/showcase/src/components/showcase/sdk/sdk-pres.spec.ts
  ✅ SdkPresComponent should create

✅ SidenavPresComponent

apps/showcase/src/components/utilities/sidenav/sidenav-pres.spec.ts
  ✅ SidenavPresComponent should create

✅ apps/vscode-extension/dist-test/junit.xml

1 tests were completed in 4s with 1 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
undefined 1✅ 4s

✅ undefined

apps/vscode-extension/src/index.spec.ts
  ✅ should be removed as soon as we have one test in this package

✅ packages/@o3r/design/dist-test/junit.xml

92 tests were completed in 17s with 92 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Add Design Token to component 3✅ 8s
Design Token generator 6✅ 7s
Design Token Parser 13✅ 6s
Design Token Renderer 14✅ 6s
Extract Token schematic 3✅ 9s
getCssStyleContentUpdater 3✅ 197ms
getCssTokenValueRenderer 7✅ 270ms
getDesignTokenStyleContentUpdater 2✅ 273ms
getDesignTokenTokenDefinitionRenderer 5✅ 349ms
getDesignTokenTokenValueRenderer 3✅ 190ms
getJsonSchemaStyleContentUpdater 1✅ 273ms
getJsonSchemaTokenValueRenderer 2✅ 240ms
getMetadataStyleContentUpdater 1✅ 230ms
getMetadataTokenDefinitionRenderer 4✅ 460ms
getMetadataTokenDefinitionRenderer 3✅ 286ms
getMetadataTokenDefinitionRenderer 2✅ 195ms
getMetadataTokenValueRenderer 3✅ 289ms
getSassTokenDefinitionRenderer 3✅ 312ms
getSassTokenValueRenderer 7✅ 275ms
isO3rPrivateVariable 3✅ 215ms
mergeDesignTokenTemplates function 2✅ 284ms
ng-add 2✅ 6s

✅ Add Design Token to component

packages/@o3r/design/schematics/design-token-to-component/index.spec.ts
  ✅ Add Design Token to component should create the design token file
  ✅ Add Design Token to component should create the design token file and target styling file
  ✅ Add Design Token to component should create the design token file with correct name

✅ Design Token generator

packages/@o3r/design/src/core/design-token/design-token.spec.ts
  ✅ Design Token generator CSS renderer should render variable in CSS
  ✅ Design Token generator CSS renderer should render variable with important flag
  ✅ Design Token generator CSS renderer should render variable with prefix
  ✅ Design Token generator CSS renderer should render variable in existing CSS
  ✅ Design Token generator CSS renderer should render private variable to sass if requested
  ✅ Design Token generator Metadata Renderer should render valid metadata

✅ Design Token Parser

packages/@o3r/design/src/core/design-token/parsers/design-token.parser.spec.ts
  ✅ Design Token Parser parseDesignToken should support single root key
  ✅ Design Token Parser parseDesignToken should generate a simple type variable
  ✅ Design Token Parser parseDesignToken should generate an alias variable
  ✅ Design Token Parser parseDesignToken with template set should generate a variable with template
  ✅ Design Token Parser parseDesignToken with template set should generate a variable with template override
  ✅ Design Token Parser parseDesignToken with template set should generate a variable with template when the token matches star
  ✅ Design Token Parser parseDesignToken should generate a complex variable
  ✅ Design Token Parser parseDesignToken should generate correctly the gradient
  ✅ Design Token Parser parseDesignToken should generate correctly the shadow with single parameter
  ✅ Design Token Parser parseDesignToken should generate correctly the shadow with multiple parameter
  ✅ Design Token Parser parseDesignTokenFile should read the file according to the reader
  ✅ Design Token Parser parseDesignTokenFile should propagate context object
  ✅ Design Token Parser parseDesignTokenFile should throw if invalid JSON Token

✅ Design Token Renderer

packages/@o3r/design/src/core/design-token/renderers/design-token-style.renderer.spec.ts
  ✅ Design Token Renderer computeFileToUpdatePath should return default file if not specified
  ✅ Design Token Renderer computeFileToUpdatePath should return file specified by the token
  ✅ Design Token Renderer getFileToUpdatePath should return default file if not specified
  ✅ Design Token Renderer getFileToUpdatePath should return file specified by the token
  ✅ Design Token Renderer renderDesignTokens should call the process for all variables
  ✅ Design Token Renderer renderDesignTokens should update all the files
  ✅ Design Token Renderer renderDesignTokens the transformers sorting by name should sort variable by name per default
  ✅ Design Token Renderer renderDesignTokens the transformers sorting by name should sort variable based on option
  ✅ Design Token Renderer renderDesignTokens the transformers sorting by name should execute the transform functions in given order
  ✅ Design Token Renderer getTokenSorterByRef should sort properly variables with multiple refs
  ✅ Design Token Renderer getTokenSorterFromRegExpList should sort properly based on regExps
  ✅ Design Token Renderer getTokenSorterFromRegExpList should not sort unmatched tokens
  ✅ Design Token Renderer getTokenSorterFromRegExpList should be correctly applied
  ✅ Design Token Renderer getTokenSorterByName should sort properly variables with grade number

✅ Extract Token schematic

packages/@o3r/design/schematics/extract-token/index.spec.ts
  ✅ Extract Token schematic should correctly extract the Design Token
  ✅ Extract Token schematic should extract the Design Token with right flatten level
  ✅ Extract Token schematic should Update the original file

✅ getCssStyleContentUpdater

packages/@o3r/design/src/core/design-token/renderers/css/design-token-updater.renderers.spec.ts
  ✅ getCssStyleContentUpdater should render CSS Values
  ✅ getCssStyleContentUpdater should add tags to new file
  ✅ getCssStyleContentUpdater should only update within tag part

✅ getCssTokenValueRenderer

packages/@o3r/design/src/core/design-token/renderers/css/design-token-value.renderers.spec.ts
  ✅ getCssTokenValueRenderer should render valid CSS value
  ✅ getCssTokenValueRenderer should render valid CSS var
  ✅ getCssTokenValueRenderer should render valid CSS var of not print value
  ✅ getCssTokenValueRenderer should render invalid reference and raise warning
  ✅ getCssTokenValueRenderer with extension value override should not override non-numeric value
  ✅ getCssTokenValueRenderer with extension value override should override numeric value and add unit
  ✅ getCssTokenValueRenderer with extension value override should override numeric value and unit

✅ getDesignTokenStyleContentUpdater

packages/@o3r/design/src/core/design-token/renderers/design-token/design-token-updater.renderers.spec.ts
  ✅ getDesignTokenStyleContentUpdater should render valid JSON object
  ✅ getDesignTokenStyleContentUpdater should merge node

✅ getDesignTokenTokenDefinitionRenderer

packages/@o3r/design/src/core/design-token/renderers/design-token/design-token-definition.renderers.spec.ts
  ✅ getDesignTokenTokenDefinitionRenderer should rely on given tokenValueRenderer
  ✅ getDesignTokenTokenDefinitionRenderer should render valid JSON object
  ✅ getDesignTokenTokenDefinitionRenderer should render deep object without keyLevel
  ✅ getDesignTokenTokenDefinitionRenderer should render deep object with keyLevel
  ✅ getDesignTokenTokenDefinitionRenderer should render deep object with keyLevel overflow

✅ getDesignTokenTokenValueRenderer

packages/@o3r/design/src/core/design-token/renderers/design-token/design-token-value.renderers.spec.ts
  ✅ getDesignTokenTokenValueRenderer should render valid JSON object
  ✅ getDesignTokenTokenValueRenderer should render token with original value
  ✅ getDesignTokenTokenValueRenderer should inherit of parent properties

✅ getJsonSchemaStyleContentUpdater

packages/@o3r/design/src/core/design-token/renderers/json-schema/design-token-updater.renderers.spec.ts
  ✅ getJsonSchemaStyleContentUpdater should render valid JSON object

✅ getJsonSchemaTokenValueRenderer

packages/@o3r/design/src/core/design-token/renderers/json-schema/design-token-value.renderers.spec.ts
  ✅ getJsonSchemaTokenValueRenderer should rely on given UrlRenderer
  ✅ getJsonSchemaTokenValueRenderer should render valid JSON object

✅ getMetadataStyleContentUpdater

packages/@o3r/design/src/core/design-token/renderers/metadata/design-token-updater.renderers.spec.ts
  ✅ getMetadataStyleContentUpdater should render valid JSON object

✅ getMetadataTokenDefinitionRenderer

packages/@o3r/design/src/core/design-token/renderers/metadata/design-token-definition.renderers.spec.ts
  ✅ getMetadataTokenDefinitionRenderer should rely on given tokenValueRenderer
  ✅ getMetadataTokenDefinitionRenderer in case of private variable should render it per default
  ✅ getMetadataTokenDefinitionRenderer in case of private variable should not render it when required
  ✅ getMetadataTokenDefinitionRenderer should render valid JSON object

✅ getMetadataTokenDefinitionRenderer

packages/@o3r/design/src/core/design-token/renderers/css/design-token-definition.renderers.spec.ts
  ✅ getMetadataTokenDefinitionRenderer should rely on given tokenValueRenderer
  ✅ getMetadataTokenDefinitionRenderer should use private renderer for private variable
  ✅ getMetadataTokenDefinitionRenderer should enforce reference when expecting override

✅ getMetadataTokenDefinitionRenderer

packages/@o3r/design/src/core/design-token/renderers/json-schema/design-token-definition.renderers.spec.ts
  ✅ getMetadataTokenDefinitionRenderer should rely on given tokenValueRenderer
  ✅ getMetadataTokenDefinitionRenderer should render valid JSON object

✅ getMetadataTokenValueRenderer

packages/@o3r/design/src/core/design-token/renderers/metadata/design-token-value.renderers.spec.ts
  ✅ getMetadataTokenValueRenderer should rely on given cssValueRenderer
  ✅ getMetadataTokenValueRenderer should render valid JSON object
  ✅ getMetadataTokenValueRenderer should correctly remove private variables from generation

✅ getSassTokenDefinitionRenderer

packages/@o3r/design/src/core/design-token/renderers/sass/design-token-definition.renderers.spec.ts
  ✅ getSassTokenDefinitionRenderer should rely on given tokenValueRenderer
  ✅ getSassTokenDefinitionRenderer should append default when expecting override
  ✅ getSassTokenDefinitionRenderer should prefix private variable

✅ getSassTokenValueRenderer

packages/@o3r/design/src/core/design-token/renderers/sass/design-token-value.renderers.spec.ts
  ✅ getSassTokenValueRenderer should render valid Scss value
  ✅ getSassTokenValueRenderer should render valid Scss var
  ✅ getSassTokenValueRenderer should render valid Scss var and not print value
  ✅ getSassTokenValueRenderer should render invalid reference and raise warning
  ✅ getSassTokenValueRenderer with extension value override should not override non-numeric value
  ✅ getSassTokenValueRenderer with extension value override should override numeric value and add unit
  ✅ getSassTokenValueRenderer with extension value override should override numeric value and unit

✅ isO3rPrivateVariable

packages/@o3r/design/src/core/design-token/renderers/design-token.renderer.helpers.spec.ts
  ✅ isO3rPrivateVariable should determine the variable as ignored
  ✅ isO3rPrivateVariable should determine the variable as not ignored
  ✅ isO3rPrivateVariable should determine the alias variable as not ignored

✅ mergeDesignTokenTemplates function

packages/@o3r/design/src/core/design-token/parsers/design-token-template.helper.spec.ts
  ✅ mergeDesignTokenTemplates function should merge object
  ✅ mergeDesignTokenTemplates function should override data in case on config

✅ ng-add

packages/@o3r/design/schematics/ng-add/index.spec.ts
  ✅ ng-add should generate the template files
  ✅ ng-add should import theming file in styles.scss