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

Admin Generator (Future): Fix generated code for optional number fields #1759

Merged
merged 7 commits into from
Mar 5, 2024

Merge branch 'next' into admin-gen-configurable_fix-optional-numberfield

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

Admin Generator (Future): Fix generated code for optional number fields #1759

Merge branch 'next' into admin-gen-configurable_fix-optional-numberfield
16dd3eb
Select commit
Loading
Failed to load commit list.
GitHub Actions / Tests succeeded Mar 5, 2024 in 1s

135 passed, 0 failed and 0 skipped

Tests passed successfully

Report Passed Failed Skipped Time
admin/admin-rte/junit.xml 6✅ 9s
admin/blocks-admin/junit.xml 5✅ 15s
admin/cms-admin/junit.xml 16✅ 9s
admin/cms-admin/node_modules/@comet/admin-rte/junit.xml 6✅ 9s
admin/cms-admin/node_modules/@comet/blocks-admin/junit.xml 5✅ 15s
api/blocks-api/junit.xml 7✅ 5s
api/cms-api/junit.xml 83✅ 86s
api/cms-api/node_modules/@comet/blocks-api/junit.xml 7✅ 5s
site/cms-site/junit.xml 2ms

✅ admin/admin-rte/junit.xml

6 tests were completed in 9s with 6 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
htmlToState 1✅ 8s
stateToHtml 5✅ 8s

✅ htmlToState

htmlToState should convert html to state to html with the html staying the same
  ✅ htmlToState should convert html to state to html with the html staying the same

✅ stateToHtml

stateToHtml should convert the rte editor state with styling into html while keeping the format via tags - formats part 1
  ✅ stateToHtml should convert the rte editor state with styling into html while keeping the format via tags - formats part 1
stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 2 (unordered list)
  ✅ stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 2 (unordered list)
stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 3 (ordered list)
  ✅ stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 3 (ordered list)
stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 4 (links)
  ✅ stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 4 (links)
stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 5 (custom styles)
  ✅ stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 5 (custom styles)

✅ admin/blocks-admin/junit.xml

5 tests were completed in 15s with 5 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
composeBlocks 4✅ 14s
createCompositeSetting 1✅ 7s

✅ composeBlocks

composeBlocks composes values of 2 BlockInterfaces
  ✅ composeBlocks composes values of 2 BlockInterfaces
composeBlocks composes values of 1 BlockInterface and 1 settings - flattened
  ✅ composeBlocks composes values of 1 BlockInterface and 1 settings - flattened
composeBlocks composes values of 2 BlockInterface and 1 scalar setting
  ✅ composeBlocks composes values of 2 BlockInterface and 1 scalar setting
composeBlocks composes values of 1 BlockInterface and 1 setting with value undefined
  ✅ composeBlocks composes values of 1 BlockInterface and 1 setting with value undefined

✅ createCompositeSetting

createCompositeSetting should work with an array value
  ✅ createCompositeSetting should work with an array value

✅ admin/cms-admin/junit.xml

16 tests were completed in 9s with 16 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
TreeMapUtils 5✅ 8s
TreeMapUtils 8✅ 8s
TreeMapUtils 3✅ 8s

✅ TreeMapUtils

TreeMapUtils subTreeFromNodes  - empty
  ✅ TreeMapUtils subTreeFromNodes  - empty
TreeMapUtils subTreeFromNodes  - first level
  ✅ TreeMapUtils subTreeFromNodes  - first level
TreeMapUtils subTreeFromNodes - nested levels
  ✅ TreeMapUtils subTreeFromNodes - nested levels
TreeMap traverse pre order
  ✅ TreeMap traverse pre order
TreeMap traverse post order
  ✅ TreeMap traverse post order

✅ TreeMapUtils

TreeMapUtils subTreeFromNodes  - empty
  ✅ TreeMapUtils subTreeFromNodes  - empty
TreeMapUtils subTreeFromNodes  - first level
  ✅ TreeMapUtils subTreeFromNodes  - first level
TreeMapUtils subTreeFromNodes - nested levels
  ✅ TreeMapUtils subTreeFromNodes - nested levels
areAllSubTreesFullSelected nothing selected
  ✅ areAllSubTreesFullSelected nothing selected
areAllSubTreesFullSelected everything selected
  ✅ areAllSubTreesFullSelected everything selected
areAllSubTreesFullSelected sub tree selected
  ✅ areAllSubTreesFullSelected sub tree selected
areAllSubTreesFullSelected nested leaf selected
  ✅ areAllSubTreesFullSelected nested leaf selected
areAllSubTreesFullSelected nested not selected
  ✅ areAllSubTreesFullSelected nested not selected

✅ TreeMapUtils

TreeMapUtils subTreeFromNodes  - empty
  ✅ TreeMapUtils subTreeFromNodes  - empty
TreeMapUtils subTreeFromNodes  - first level
  ✅ TreeMapUtils subTreeFromNodes  - first level
TreeMapUtils subTreeFromNodes - nested levels
  ✅ TreeMapUtils subTreeFromNodes - nested levels

✅ admin/cms-admin/node_modules/@comet/admin-rte/junit.xml

6 tests were completed in 9s with 6 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
htmlToState 1✅ 8s
stateToHtml 5✅ 8s

✅ htmlToState

htmlToState should convert html to state to html with the html staying the same
  ✅ htmlToState should convert html to state to html with the html staying the same

✅ stateToHtml

stateToHtml should convert the rte editor state with styling into html while keeping the format via tags - formats part 1
  ✅ stateToHtml should convert the rte editor state with styling into html while keeping the format via tags - formats part 1
stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 2 (unordered list)
  ✅ stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 2 (unordered list)
stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 3 (ordered list)
  ✅ stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 3 (ordered list)
stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 4 (links)
  ✅ stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 4 (links)
stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 5 (custom styles)
  ✅ stateToHtml should convert the rte editor state with formating into html while keeping the format via tags - formats part 5 (custom styles)

✅ admin/cms-admin/node_modules/@comet/blocks-admin/junit.xml

5 tests were completed in 15s with 5 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
composeBlocks 4✅ 14s
createCompositeSetting 1✅ 7s

✅ composeBlocks

composeBlocks composes values of 2 BlockInterfaces
  ✅ composeBlocks composes values of 2 BlockInterfaces
composeBlocks composes values of 1 BlockInterface and 1 settings - flattened
  ✅ composeBlocks composes values of 1 BlockInterface and 1 settings - flattened
composeBlocks composes values of 2 BlockInterface and 1 scalar setting
  ✅ composeBlocks composes values of 2 BlockInterface and 1 scalar setting
composeBlocks composes values of 1 BlockInterface and 1 setting with value undefined
  ✅ composeBlocks composes values of 1 BlockInterface and 1 setting with value undefined

✅ createCompositeSetting

createCompositeSetting should work with an array value
  ✅ createCompositeSetting should work with an array value

✅ api/blocks-api/junit.xml

7 tests were completed in 5s with 7 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
FlatBlocks 2✅ 5s
Search 3✅ 5s
transform to save index 2✅ 5s

✅ FlatBlocks

FlatBlocks visits all BlockData-references breadth first
  ✅ FlatBlocks visits all BlockData-references breadth first
FlatBlocks visits childblocks of blockBlock
  ✅ FlatBlocks visits childblocks of blockBlock

✅ Search

Search gets SearchData
  ✅ Search gets SearchData
Search gets SearchData and respects invisible blocks
  ✅ Search gets SearchData and respects invisible blocks
Search gets SearchData and respects nested invisible blocks
  ✅ Search gets SearchData and respects nested invisible blocks

✅ transform to save index

transform to save index build correctly
  ✅ transform to save index build correctly
transform to save index extract id of DamFile
  ✅ transform to save index extract id of DamFile

✅ api/cms-api/junit.xml

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

Test suite Passed Failed Skipped Time
Files Utils 3✅ 597ms
GenerateCrud 4✅ 11s
GenerateCrud Status with active 5✅ 28s
GenerateCrud without find condition 1✅ 5s
GenerateCrudEnumArray 1✅ 11s
GenerateCrudEnumMultiUse 1✅ 11s
GenerateCrudEnumOptional 1✅ 12s
GenerateCrudInput 6✅ 40s
GenerateCrudInputArray 1✅ 10s
GenerateCrudInputInteger 1✅ 6s
GenerateCrudInputJson 4✅ 38s
GenerateCrudInputRelations 2✅ 4s
GenerateCrudRelations 3✅ 9s
GenerateCrudRelationsIdString 1✅ 6s
GenerateCrudRelationsIdString 1✅ 5s
GenerateCrudRelationsMultiUse 1✅ 6s
GenerateCrudRelationsNested 1✅ 6s
GenerateCrudRelationsNonNullable 3✅ 8s
GenerateCrudResolveField 1✅ 6s
GenerateCrudResolveIdInteger 1✅ 5s
IsSlug 3✅ 854ms
PageTreeReadApi 11✅ 4s
RootBlockDataScalar 2✅ 2s
RootBlockInputScalar 2✅ 3s
searchToMikroOrmQuery 23✅ 19s

✅ Files Utils

Files Utils svgContainsJavaScript should return false if the svg doesn't contain a script tag or event handler
  ✅ Files Utils svgContainsJavaScript should return false if the svg doesn't contain a script tag or event handler
Files Utils svgContainsJavaScript should return true if the svg contains a script tag
  ✅ Files Utils svgContainsJavaScript should return true if the svg contains a script tag
Files Utils svgContainsJavaScript should return true if the svg contains an event handler
  ✅ Files Utils svgContainsJavaScript should return true if the svg contains an event handler

✅ GenerateCrud

GenerateCrud resolver class should be a valid generated ts file
  ✅ GenerateCrud resolver class should be a valid generated ts file
GenerateCrud string filter should be a valid generated ts file
  ✅ GenerateCrud string filter should be a valid generated ts file
GenerateCrud number filter should be a valid generated ts file
  ✅ GenerateCrud number filter should be a valid generated ts file
GenerateCrud text type filter should be a valid generated ts file
  ✅ GenerateCrud text type filter should be a valid generated ts file

✅ GenerateCrud Status with active

GenerateCrud Status with active input should contain status
  ✅ GenerateCrud Status with active input should contain status
GenerateCrud Status with active resolver should not include update status mutation
  ✅ GenerateCrud Status with active resolver should not include update status mutation
GenerateCrud Status with active args should use status enum as defined for enitity
  ✅ GenerateCrud Status with active args should use status enum as defined for enitity
GenerateCrud Status with published/unpublished args should include own status enum that doesn't include published/unpublished
  ✅ GenerateCrud Status with published/unpublished args should include own status enum that doesn't include published/unpublished
GenerateCrud Status with published/unpublished args should not include status filter as all are active ones
  ✅ GenerateCrud Status with published/unpublished args should not include status filter as all are active ones

✅ GenerateCrud without find condition

GenerateCrud without find condition where should be typed as ObjectQuery as it is when findCondition is used
  ✅ GenerateCrud without find condition where should be typed as ObjectQuery as it is when findCondition is used

✅ GenerateCrudEnumArray

GenerateCrudEnumArray should correctly add EnumArrayType in input type
  ✅ GenerateCrudEnumArray should correctly add EnumArrayType in input type

✅ GenerateCrudEnumMultiUse

GenerateCrudEnumMultiUse should import a enum reference only once if used multiple times
  ✅ GenerateCrudEnumMultiUse should import a enum reference only once if used multiple times

✅ GenerateCrudEnumOptional

GenerateCrudEnumOptional should correctly determine enum import path
  ✅ GenerateCrudEnumOptional should correctly determine enum import path

✅ GenerateCrudInput

GenerateCrudInput string input class should be a valid generated ts file
  ✅ GenerateCrudInput string input class should be a valid generated ts file
GenerateCrudInput date input class should be a valid generated ts file
  ✅ GenerateCrudInput date input class should be a valid generated ts file
GenerateCrudInput boolean input class should be a valid generated ts file
  ✅ GenerateCrudInput boolean input class should be a valid generated ts file
GenerateCrudInput enum input class should be a valid generated ts file
  ✅ GenerateCrudInput enum input class should be a valid generated ts file
GenerateCrudInput uuid input class should be a valid generated ts file
  ✅ GenerateCrudInput uuid input class should be a valid generated ts file
GenerateCrudInput text type input class should be a valid generated ts file
  ✅ GenerateCrudInput text type input class should be a valid generated ts file

✅ GenerateCrudInputArray

GenerateCrudInputArray should support all string array variants
  ✅ GenerateCrudInputArray should support all string array variants

✅ GenerateCrudInputInteger

GenerateCrudInputInteger should generate correct input type for integer values
  ✅ GenerateCrudInputInteger should generate correct input type for integer values

✅ GenerateCrudInputJson

GenerateCrudInputJson input class literal array should be a valid generated ts file
  ✅ GenerateCrudInputJson input class literal array should be a valid generated ts file
GenerateCrudInputJson input class json object should be a valid generated ts file
  ✅ GenerateCrudInputJson input class json object should be a valid generated ts file
GenerateCrudInputJson input class embedded object should be a valid generated ts file
  ✅ GenerateCrudInputJson input class embedded object should be a valid generated ts file
GenerateCrudInputJson input class record should be a valid generated ts file
  ✅ GenerateCrudInputJson input class record should be a valid generated ts file

✅ GenerateCrudInputRelations

GenerateCrudInputRelations n:1 input dto should contain relation id
  ✅ GenerateCrudInputRelations n:1 input dto should contain relation id
GenerateCrudInputRelations 1:n input dto should contain relation id
  ✅ GenerateCrudInputRelations 1:n input dto should contain relation id

✅ GenerateCrudRelations

GenerateCrudRelations resolver class should be a valid generated ts file
  ✅ GenerateCrudRelations resolver class should be a valid generated ts file
  ✅ GenerateCrudRelations resolver class should be a valid generated ts file
GenerateCrudRelations resolver class input type to category relation should be string with uuid validator
  ✅ GenerateCrudRelations resolver class input type to category relation should be string with uuid validator

✅ GenerateCrudRelationsIdString

GenerateCrudRelationsIdString resolver class input type to category relation should be number with integer validator
  ✅ GenerateCrudRelationsIdString resolver class input type to category relation should be number with integer validator

✅ GenerateCrudRelationsIdString

GenerateCrudRelationsIdString resolver class input type to category relation should be string with isString and not IsUuid validator
  ✅ GenerateCrudRelationsIdString resolver class input type to category relation should be string with isString and not IsUuid validator

✅ GenerateCrudRelationsMultiUse

GenerateCrudRelationsMultiUse should import a relation reference only once if used multiple times
  ✅ GenerateCrudRelationsMultiUse should import a relation reference only once if used multiple times

✅ GenerateCrudRelationsNested

GenerateCrudRelationsNested resolver class should be a valid generated ts file
  ✅ GenerateCrudRelationsNested resolver class should be a valid generated ts file

✅ GenerateCrudRelationsNonNullable

GenerateCrudRelationsNonNullable resolver class input type must not include product relation
  ✅ GenerateCrudRelationsNonNullable resolver class input type must not include product relation
GenerateCrudRelationsNonNullable resolver class query list must include product arg
  ✅ GenerateCrudRelationsNonNullable resolver class query list must include product arg
GenerateCrudRelationsNonNullable resolver class create mutation must include product arg
  ✅ GenerateCrudRelationsNonNullable resolver class create mutation must include product arg

✅ GenerateCrudResolveField

GenerateCrudResolveField Resolve field should not include categories in resolver
  ✅ GenerateCrudResolveField Resolve field should not include categories in resolver

✅ GenerateCrudResolveIdInteger

GenerateCrudResolveIdInteger should generate item resolver with correctly typed id parameter
  ✅ GenerateCrudResolveIdInteger should generate item resolver with correctly typed id parameter

✅ IsSlug

IsSlug findAll should accept a valid slug
  ✅ IsSlug findAll should accept a valid slug
IsSlug findAll should not accept space
  ✅ IsSlug findAll should not accept space
IsSlug findAll should not accept umlaut
  ✅ IsSlug findAll should not accept umlaut

✅ PageTreeReadApi

PageTreeReadApi sortPreloadedNodes should skip sorting if only sort criteria is by pos ascending
  ✅ PageTreeReadApi sortPreloadedNodes should skip sorting if only sort criteria is by pos ascending
PageTreeReadApi sortPreloadedNodes should sort by pos descending
  ✅ PageTreeReadApi sortPreloadedNodes should sort by pos descending
PageTreeReadApi sortPreloadedNodes should sort by updatedAt ascending
  ✅ PageTreeReadApi sortPreloadedNodes should sort by updatedAt ascending
PageTreeReadApi sortPreloadedNodes should sort by updatedAt descending
  ✅ PageTreeReadApi sortPreloadedNodes should sort by updatedAt descending
PageTreeReadApi sortPreloadedNodes should sort first by position, then by updatedAt
  ✅ PageTreeReadApi sortPreloadedNodes should sort first by position, then by updatedAt
PageTreeReadApi sortPreloadedNodes should sort first by updatedAt, then by position
  ✅ PageTreeReadApi sortPreloadedNodes should sort first by updatedAt, then by position
PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with correct offset and limit options Should return [1] with offset 0 limit 1
  ✅ PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with correct offset and limit options Should return [1] with offset 0 limit 1
PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with correct offset and limit options Should return [2, 3] with offset 1 limit 2
  ✅ PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with correct offset and limit options Should return [2, 3] with offset 1 limit 2
PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with correct offset and limit options Should return empty array with offset 3 limit 1
  ✅ PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with correct offset and limit options Should return empty array with offset 3 limit 1
PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with incorrect offset and limit options Should throw Error with offset -1 limit 2
  ✅ PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with incorrect offset and limit options Should throw Error with offset -1 limit 2
PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with incorrect offset and limit options Should throw Error with offset 1 limit -1
  ✅ PageTreeReadApi paginatePreloadedNodes Nodes [1, 2, 3] with incorrect offset and limit options Should throw Error with offset 1 limit -1

✅ RootBlockDataScalar

RootBlockDataScalar should work
  ✅ RootBlockDataScalar should work
RootBlockDataScalar should work with multiple instances of the same scalar
  ✅ RootBlockDataScalar should work with multiple instances of the same scalar

✅ RootBlockInputScalar

RootBlockInputScalar should work
  ✅ RootBlockInputScalar should work
RootBlockInputScalar should work with multiple instances of the same scalar
  ✅ RootBlockInputScalar should work with multiple instances of the same scalar

✅ searchToMikroOrmQuery

searchToMikroOrmQuery should work
  ✅ searchToMikroOrmQuery should work
searchToMikroOrmQuery should escape %
  ✅ searchToMikroOrmQuery should escape %
searchToMikroOrmQuery should escape _
  ✅ searchToMikroOrmQuery should escape _
searchToMikroOrmQuery should split by spaces
  ✅ searchToMikroOrmQuery should split by spaces
searchToMikroOrmQuery should ignore leading and trailing spaces
  ✅ searchToMikroOrmQuery should ignore leading and trailing spaces
filterToMikroOrmQuery string equal
  ✅ filterToMikroOrmQuery string equal
filterToMikroOrmQuery string not equal
  ✅ filterToMikroOrmQuery string not equal
filterToMikroOrmQuery string contains
  ✅ filterToMikroOrmQuery string contains
filterToMikroOrmQuery string contains escape %
  ✅ filterToMikroOrmQuery string contains escape %
filterToMikroOrmQuery string contains escape _
  ✅ filterToMikroOrmQuery string contains escape _
filterToMikroOrmQuery string starts with
  ✅ filterToMikroOrmQuery string starts with
filterToMikroOrmQuery string ends with
  ✅ filterToMikroOrmQuery string ends with
filterToMikroOrmQuery string starts with and contains
  ✅ filterToMikroOrmQuery string starts with and contains
filterToMikroOrmQuery number equals
  ✅ filterToMikroOrmQuery number equals
filterToMikroOrmQuery number not equals
  ✅ filterToMikroOrmQuery number not equals
filterToMikroOrmQuery number gt
  ✅ filterToMikroOrmQuery number gt
filterToMikroOrmQuery boolean equals
  ✅ filterToMikroOrmQuery boolean equals
filtersToMikroOrmQuery string equal
  ✅ filtersToMikroOrmQuery string equal
filtersToMikroOrmQuery and filter
  ✅ filtersToMikroOrmQuery and filter
filtersToMikroOrmQuery or filter
  ✅ filtersToMikroOrmQuery or filter
filtersToMikroOrmQuery custom apply filter
  ✅ filtersToMikroOrmQuery custom apply filter
filtersToMikroOrmQuery custom apply filter with default fallback
  ✅ filtersToMikroOrmQuery custom apply filter with default fallback
filtersToMikroOrmQuery empty filter
  ✅ filtersToMikroOrmQuery empty filter

✅ api/cms-api/node_modules/@comet/blocks-api/junit.xml

7 tests were completed in 5s with 7 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
FlatBlocks 2✅ 5s
Search 3✅ 5s
transform to save index 2✅ 5s

✅ FlatBlocks

FlatBlocks visits all BlockData-references breadth first
  ✅ FlatBlocks visits all BlockData-references breadth first
FlatBlocks visits childblocks of blockBlock
  ✅ FlatBlocks visits childblocks of blockBlock

✅ Search

Search gets SearchData
  ✅ Search gets SearchData
Search gets SearchData and respects invisible blocks
  ✅ Search gets SearchData and respects invisible blocks
Search gets SearchData and respects nested invisible blocks
  ✅ Search gets SearchData and respects nested invisible blocks

✅ transform to save index

transform to save index build correctly
  ✅ transform to save index build correctly
transform to save index extract id of DamFile
  ✅ transform to save index extract id of DamFile

✅ site/cms-site/junit.xml

No tests found