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

fix(#2553): remove config with no properties + support metadata check for config without properties #2641

Merged
merged 1 commit into from
Jan 7, 2025

fix(#2553): remove config with no properties + support metadata check…

74f57c7
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Merged

fix(#2553): remove config with no properties + support metadata check for config without properties #2641

fix(#2553): remove config with no properties + support metadata check…
74f57c7
Select commit
Loading
Failed to load commit list.
GitHub Actions / UT Tests report-windows-latest succeeded Jan 6, 2025 in 1s

172 passed, 0 failed and 0 skipped

Tests passed successfully

Report Passed Failed Skipped Time
apps/chrome-devtools/dist-test/junit.xml 1✅ 14s
apps/showcase/dist-test/junit.xml 27✅ 83s
packages/@o3r/components/dist-test/junit.xml 79✅ 31s
packages/@o3r/configuration/dist-test/junit.xml 42✅ 64s
packages/@o3r/storybook/dist-test/junit.xml 23✅ 17s

✅ apps/chrome-devtools/dist-test/junit.xml

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

Test suite Passed Failed Skipped Time
undefined 1✅ 10s

✅ undefined

apps\chrome-devtools\src\index.spec.ts
  ✅ should be removed as soon as we have one test in this package

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

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

Test suite Passed Failed Skipped Time
AppComponent 1✅ 5s
BasicPresComponent 1✅ 3s
ClipboardButtonPresComponent 1✅ 2s
ComponentReplacementComponent 1✅ 5s
ComponentReplacementPresComponent 1✅ 42s
ConfigurationComponent 1✅ 6s
ConfigurationPresComponent 1✅ 3s
DatePickerHebrewInputPresComponent 1✅ 3s
DatePickerInputPresComponent 1✅ 2s
DesignTokenComponent 1✅ 6s
DesignTokenPresComponent 1✅ 3s
DynamicContentComponent 1✅ 5s
DynamicContentPresComponent 1✅ 3s
HomeComponent 1✅ 3s
InPageNavPresComponent 1✅ 2s
LocalizationComponent 1✅ 6s
LocalizationPresComponent 1✅ 3s
OtterPickerPresComponent 1✅ 2s
PlaceholderComponent 1✅ 6s
PlaceholderPresComponent 1✅ 5s
RulesEngineComponent 1✅ 48s
RulesEnginePresComponent 1✅ 42s
RunAppLocallyComponent 1✅ 4s
ScrollBackTopPresComponent 1✅ 980ms
SdkComponent 1✅ 7s
SdkPresComponent 1✅ 4s
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

✅ ClipboardButtonPresComponent

apps\showcase\src\components\utilities\clipboard-button\clipboard-button-pres.spec.ts
  ✅ ClipboardButtonPresComponent 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

✅ 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

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

79 tests were completed in 31s with 79 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
CapitalizePipe 4✅ 451ms
Component Extractor Builder 1✅ 10s
configMetadataComparator 6✅ 4s
DurationPipe 14✅ 955ms
Keep white space pipe 3✅ 444ms
Otter inspector helpers 7✅ 4s
Otter Inspector Service 4✅ 2s
Placeholder component 4✅ 10s
PlaceholderRequest Selectors tests 2✅ 491ms
PlaceholderRequest Store reducer 7✅ 1s
PlaceholderTemplate Store reducer 3✅ 524ms
Rendering helpers 4✅ 789ms
Replace with bold pipe 7✅ 638ms
Rules Engine Effects 6✅ 18s
selectPlaceholderRenderedTemplates 4✅ 10s
Update v10 3✅ 11s

✅ CapitalizePipe

packages\@o3r\components\src\tools\pipes\capitalize\capitalize.pipe.spec.ts
  ✅ CapitalizePipe transforms "abc" to "Abc"
  ✅ CapitalizePipe transforms "abc def" to "Abc def"
  ✅ CapitalizePipe ignores whitespace
  ✅ CapitalizePipe does not break on empty values

✅ Component Extractor Builder

packages\@o3r\components\builders\component-extractor\index.spec.ts
  ✅ Component Extractor Builder should extract components

✅ configMetadataComparator

packages\@o3r\components\builders\metadata-check\helpers\config-metadata-comparison.helper.spec.ts
  ✅ configMetadataComparator getArray should return one element per configuration property
  ✅ configMetadataComparator getArray should return only configurations with properties
  ✅ configMetadataComparator getIdentifier should return an identifier with the property name
  ✅ configMetadataComparator getIdentifier should return an identifier without property name if none available
  ✅ configMetadataComparator isMigrationDataMatch should return true
  ✅ configMetadataComparator isMigrationDataMatch should return false

✅ DurationPipe

packages\@o3r\components\src\tools\pipes\duration\duration.pipe.spec.ts
  ✅ DurationPipe transforms 120s to 0:02
  ✅ DurationPipe transforms 100s to 0:01
  ✅ DurationPipe transforms 3660 seconds to "1:01"
  ✅ DurationPipe transforms 90000s to "25:00" (duration exceeds 24 hours)
  ✅ DurationPipe transforms 360000s to "100:00" (hours are 3 digits long)
  ✅ DurationPipe transforms 120s to 0h02m
  ✅ DurationPipe transforms 120s to 00H02M
  ✅ DurationPipe transforms 3660s to 1h01
  ✅ DurationPipe transforms 86399s to 0d23h59m
  ✅ DurationPipe transforms 86399s to 0d86399s
  ✅ DurationPipe transforms 93675s to an object "{"d": 1, "h": 2, "m": 1, "s": 15}"
  ✅ DurationPipe returns pattern when regex not respected
  ✅ DurationPipe should work for custom unit times
  ✅ DurationPipe should work for unit times that are not present in the pattern

✅ Keep white space pipe

packages\@o3r\components\src\tools\pipes\keep-white-space\keep-white-space.pipe.spec.ts
  ✅ Keep white space pipe does nothing when no white spaces
  ✅ Keep white space pipe should work with space inside the word
  ✅ Keep white space pipe should do nothing when empty string

✅ Otter inspector helpers

packages\@o3r\components\src\devkit\inspector\otter-inspector.helpers.spec.ts
  ✅ Otter inspector helpers isContainer should return true if the node is an Otter container
  ✅ Otter inspector helpers isContainer should return false if the node is not an Otter container
  ✅ Otter inspector helpers getConfigId should return the config id of the component instance
  ✅ Otter inspector helpers getConfigId should return undefined if the component instance has no config id
  ✅ Otter inspector helpers helpers that need a component instance getTranslations should return the translations of the node
  ✅ Otter inspector helpers helpers that need a component instance getAnalyticsEvents should return the analytics events of the node
  ✅ Otter inspector helpers helpers that need a component instance getOtterLikeComponentInfo should return the info of the component

✅ Otter Inspector Service

packages\@o3r\components\src\devkit\inspector\otter-inspector.service.spec.ts
  ✅ Otter Inspector Service should prepare the DOM
  ✅ Otter Inspector Service should not re-prepare the DOM
  ✅ Otter Inspector Service should add 3 listeners on window
  ✅ Otter Inspector Service should remove 3 listeners on window

✅ Placeholder component

packages\@o3r\components\src\tools\placeholder\placeholder.spec.ts
  ✅ Placeholder component should render the template
  ✅ Placeholder component should render the templates
  ✅ Placeholder component should retrieve new template on ID change
  ✅ Placeholder component isPending status of the placeholder should display the ng-content

✅ PlaceholderRequest Selectors tests

packages\@o3r\components\src\stores\placeholder-request\placeholder-request.selectors.spec.ts
  ✅ PlaceholderRequest Selectors tests should return undefined if requested ID is not in the state
  ✅ PlaceholderRequest Selectors tests should return the correct entity if requested ID is in the state

✅ PlaceholderRequest Store reducer

packages\@o3r\components\src\stores\placeholder-request\placeholder-request.reducer.spec.ts
  ✅ PlaceholderRequest Store reducer should have the correct initial state
  ✅ PlaceholderRequest Store reducer should by default return the initial state
  ✅ PlaceholderRequest Store reducer Cancel request should work properly
  ✅ PlaceholderRequest Store reducer Entity actions ACTION_UPDATE_ENTITY_SYNC action should not touch existing properties not provided in the payload
  ✅ PlaceholderRequest Store reducer Entity actions ACTION_UPDATE_ENTITY action should not touch existing properties not provided in the payload and update the pending status
  ✅ PlaceholderRequest Store reducer Entity actions FAIL_ENTITIES action should update the global isPending to false in case there are some newIds in the payload
  ✅ PlaceholderRequest Store reducer API call actions SET_ENTITY_FROM_URL action should clear current entities and set new ones

✅ PlaceholderTemplate Store reducer

packages\@o3r\components\src\stores\placeholder-template\placeholder-template.reducer.spec.ts
  ✅ PlaceholderTemplate Store reducer should have the correct initial state
  ✅ PlaceholderTemplate Store reducer should by default return the initial state
  ✅ PlaceholderTemplate Store reducer ACTION_DELETE_ENTITY and ACTION_SET_ENTITY actions should work properly

✅ Rendering helpers

packages\@o3r\components\src\core\rendering\helpers.spec.ts
  ✅ Rendering helpers lazyArray should not emit elements if empty
  ✅ Rendering helpers lazyArray should emit only 1 element
  ✅ Rendering helpers lazyArray should emit default amount of elements
  ✅ Rendering helpers lazyArray should support change amount of emitted elements and delay

✅ Replace with bold pipe

packages\@o3r\components\src\tools\pipes\replace-with-bold\replace-with-bold.pipe.spec.ts
  ✅ Replace with bold pipe search if the input match the label and change it to bold
  ✅ Replace with bold pipe does nothing when no match
  ✅ Replace with bold pipe should work with space inside the word
  ✅ Replace with bold pipe search input match - special character test
  ✅ Replace with bold pipe should ignore white spaces at the beginning
  ✅ Replace with bold pipe should ignore white spaces
  ✅ Replace with bold pipe should not ignore white spaces in the middle (no matches)

✅ Rules Engine Effects

packages\@o3r\components\src\rules-engine\placeholder.rules-engine.effect.spec.ts
  ✅ Rules Engine Effects Check if effect is correctly injected
  ✅ Rules Engine Effects should resolve vars
  ✅ Rules Engine Effects should resolve vars and parameters
  ✅ Rules Engine Effects should notify user some vars have an unknown type
  ✅ Rules Engine Effects should not trigger an update if the jsonpath computed value did not change
  ✅ Rules Engine Effects should not convert all falsy values to empty string

✅ selectPlaceholderRenderedTemplates

packages\@o3r\components\src\stores\placeholder-template\placeholder-template.selectors.spec.ts
  ✅ selectPlaceholderRenderedTemplates should handle undefined state properly
  ✅ selectPlaceholderRenderedTemplates should handle pending status properly
  ✅ selectPlaceholderRenderedTemplates should filter items on failure out
  ✅ selectPlaceholderRenderedTemplates should return the list of sorted placeholders

✅ Update v10

packages\@o3r\components\schematics\ng-update\v10-0\index.spec.ts
  ✅ Update v10 Update pipes should replace the pipe with standalone component
  ✅ Update v10 Update pipes should replace the pipe with module based component
  ✅ Update v10 Update c11n presenter$ declaration shoud update the c11n presenter$ declaration

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

42 tests were completed in 64s with 42 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Add Config 7✅ 34s
ConfigOverride Store reducer 2✅ 806ms
Configuration DevTools console 5✅ 11s
Configuration DevTools message 3✅ 4s
Configuration operators getConfiguration 2✅ 928ms
Configuration Store 8✅ 34s
ConfigurationBaseService 10✅ 55s
Migrate to config signal-based 1✅ 4s
Update 2✅ 2s
Update 2✅ 10s

✅ Add Config

packages\@o3r\configuration\schematics\configuration-to-component\index.spec.ts
  ✅ Add Config should create the config file and update the component
  ✅ Add Config should create the config file and update the component with signal based configuration
  ✅ Add Config should not expose the component
  ✅ Add Config should throw if we add config to a component that already has it
  ✅ Add Config should throw if inexisting path
  ✅ Add Config Angular component should throw if no Otter component
  ✅ Add Config Angular component should call convert-component if no Otter component

✅ ConfigOverride Store reducer

packages\@o3r\configuration\src\stores\config-override\config-override.reducer.spec.ts
  ✅ ConfigOverride Store reducer should have the correct initial state
  ✅ ConfigOverride Store reducer Action SET action should clear current cart state details and return a state with the new one

✅ Configuration DevTools console

packages\@o3r\configuration\src\devkit\configuration-devtools.console.spec.ts
  ✅ Configuration DevTools console should be activated
  ✅ Configuration DevTools console should display the whole configuration
  ✅ Configuration DevTools console should display the configuration of componentTest
  ✅ Configuration DevTools console should set new configuration
  ✅ Configuration DevTools console should upsert new configurations

✅ Configuration DevTools message

packages\@o3r\configuration\src\devkit\configuration-devtools.message.spec.ts
  ✅ Configuration DevTools message should be activated
  ✅ Configuration DevTools message should ignore message when not activated
  ✅ Configuration DevTools message should send the application on plugin connect

✅ Configuration operators getConfiguration

packages\@o3r\configuration\src\core\configuration.spec.ts
  ✅ Configuration operators getConfiguration should get the given component config
  ✅ Configuration operators getConfiguration should get the given component config and apply store override

✅ Configuration Store

packages\@o3r\configuration\src\stores\configuration\configuration.reducer.spec.ts
  ✅ Configuration Store should have the correct initial state
  ✅ Configuration Store UPSERT_ENTITIES should add the configuration for multiple components
  ✅ Configuration Store UPSERT_ENTITIES should update the configuration for multiple components
  ✅ Configuration Store UPDATE_ENTITY should update the configuration with a partial one
  ✅ Configuration Store UPDATE_ENTITIES should update the configuration for multiple components
  ✅ Configuration Store UPSERT_ENTITY should add a configuration if not found
  ✅ Configuration Store UPSERT_ENTITY should update the configuration if it is already in the entities
  ✅ Configuration Store CLEAR_ENTITIES should clear the configuration entities

✅ ConfigurationBaseService

packages\@o3r\configuration\src\services\configuration\configuration.base.service.spec.ts
  ✅ ConfigurationBaseService should add globalconfig config
  ✅ ConfigurationBaseService should update a specific component config
  ✅ ConfigurationBaseService should extend the existing config and not touch the existing fields
  ✅ ConfigurationBaseService should get the configuration from body tag
  ✅ ConfigurationBaseService should put the configuration from body tag in the store
  ✅ ConfigurationBaseService getConfig emissions should not emit if we do not change the INITIAL_CONFIG value
  ✅ ConfigurationBaseService getConfig emissions should emit if we change the INITIAL_CONFIG value
  ✅ ConfigurationBaseService getConfig emissions should not emit if we change the global config as the INITIAL_CONFIG will override its value
  ✅ ConfigurationBaseService getConfig emissions should emit if we change the override config
  ✅ ConfigurationBaseService getConfig emissions should not emit if we change the config value when it is overriden by the override config

✅ Migrate to config signal-based

packages\@o3r\configuration\schematics\use-config-signal\index.spec.ts
  ✅ Migrate to config signal-based should migrate to a signal-based configuration

✅ Update

packages\@o3r\configuration\schematics\ng-update\v11-6\index.spec.ts
  ✅ Update Update v11.6 should migrate the not migrated file
  ✅ Update Update v11.6 should not change the file already migrated

✅ Update

packages\@o3r\configuration\schematics\ng-update\v10-3\index.spec.ts
  ✅ Update Update v10.3 should modify only impacted files
  ✅ Update Update v10.3 should modify only ConfigObserver

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

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

Test suite Passed Failed Skipped Time
Configuration Metadata setup 5✅ 10s
generateThemeCss 2✅ 768ms
generateThemeCss 2✅ 2s
Localization Metadata setup 4✅ 11s
Styling Metadata setup 10✅ 10s

✅ Configuration Metadata setup

packages\@o3r\storybook\src\configuration\configuration.spec.ts
  ✅ Configuration Metadata setup should register the metadata
  ✅ Configuration Metadata setup should retrieve the metadata
  ✅ Configuration helper extractConfiguration should extract description from metadata
  ✅ Configuration helper retrieveConfigFromProps should extract only config properties
  ✅ Configuration helper retrieveConfigFromProps should return empty object if no config property found

✅ generateThemeCss

packages\@o3r\storybook\addon\helpers.spec.ts
  ✅ generateThemeCss should generate a css file
  ✅ generateThemeCss should generate a css file from diff

✅ generateThemeCss

packages\@o3r\storybook\addon\helpers.spec.ts
  ✅ generateThemeCss should generate a css file
  ✅ generateThemeCss should generate a css file from diff

✅ Localization Metadata setup

packages\@o3r\storybook\src\localization\localization.spec.ts
  ✅ Localization Metadata setup should register the metadata
  ✅ Localization Metadata setup should retrieve the metadata
  ✅ Localization helper extractLocalization should extract description from metadata
  ✅ Localization helper getLocalizations should extract key/value from metadata

✅ Styling Metadata setup

packages\@o3r\storybook\src\styling\styling.spec.ts
  ✅ Styling Metadata setup should register the metadata
  ✅ Styling Metadata setup should retrieve the metadata
  ✅ Styling Helpers setCssVariable should create a new style element
  ✅ Styling Helpers setCssVariable should edit an existing variable
  ✅ Styling Helpers getTypeAndValue should return a color editor for color
  ✅ Styling Helpers getTypeAndValue should return a text editor for color
  ✅ Styling Helpers extractStyling should extract component variable
  ✅ Styling Helpers extractStyling should not extract incorrect variable
  ✅ Styling Helpers extractStyling should return the final value of the referenced variable
  ✅ Styling Helpers getThemeVariables should extract theme variable only