I have a vitest test that uses expect(screen.queryAllByRole('checkbox').length).toBeGreaterThan(0)
Running in the Webstorm test runner, the test passes. Running via nx in the terminal (and in CI) fails:
nx run @member/all-products:validate:tests
Here is the project.json for the @member/all-products
<code>"validate:tests": {
"executor": "@nx/vite:test",
"options": {
"configFile": "{projectRoot}/vite.config.mts"
}
},
</code>
<code>"validate:tests": {
"executor": "@nx/vite:test",
"options": {
"configFile": "{projectRoot}/vite.config.mts"
}
},
</code>
"validate:tests": {
"executor": "@nx/vite:test",
"options": {
"configFile": "{projectRoot}/vite.config.mts"
}
},
Where that config file is simply
<code>export default vite.makeConfig({
name: '@member/all-products',
pathToRepoRoot: '../../../',
projectDir: __dirname,
})
</code>
<code>export default vite.makeConfig({
name: '@member/all-products',
pathToRepoRoot: '../../../',
projectDir: __dirname,
})
</code>
export default vite.makeConfig({
name: '@member/all-products',
pathToRepoRoot: '../../../',
projectDir: __dirname,
})
Why is it failing in the terminal and passing in Webstorm?
FWIW the test failure output definitely includes checkboxes!
<code> <label
class="Checkbox_root__rm3qrv1 Checkbox__rm3qrv0 sprinkles_display_inlineFlex_mobile__1xrw3huey sprinkles_alignItems_flexStart_mobile__1xrw3hue2 sprinkles_flexDirection_row_mobile__1xrw3hufa sprinkles_cursor_pointer_default__1xrw3hud6 Checkbox_variants_interface__rm3qrv5 typography_Body2_Bold__185e4nvs typography_BodySpacing__185e4nv1 typography_Lato_Bold__185e4nvb typography_LatoBase__185e4nva typography_overflowWrap__185e4nv9"
for="all-products-desktop-filters-price-On Sale"
type="checkbox"
>
<input
class="Checkbox_input__rm3qrv9 Checkbox__rm3qrv8 sprinkles_position_absolute_mobile__1xrw3hunu sprinkles_zIndex_z-1__1xrw3hu2o"
id="all-products-desktop-filters-price-On Sale"
name="price"
type="checkbox"
value="On Sale"
/>
<span
</code>
<code> <label
class="Checkbox_root__rm3qrv1 Checkbox__rm3qrv0 sprinkles_display_inlineFlex_mobile__1xrw3huey sprinkles_alignItems_flexStart_mobile__1xrw3hue2 sprinkles_flexDirection_row_mobile__1xrw3hufa sprinkles_cursor_pointer_default__1xrw3hud6 Checkbox_variants_interface__rm3qrv5 typography_Body2_Bold__185e4nvs typography_BodySpacing__185e4nv1 typography_Lato_Bold__185e4nvb typography_LatoBase__185e4nva typography_overflowWrap__185e4nv9"
for="all-products-desktop-filters-price-On Sale"
type="checkbox"
>
<input
class="Checkbox_input__rm3qrv9 Checkbox__rm3qrv8 sprinkles_position_absolute_mobile__1xrw3hunu sprinkles_zIndex_z-1__1xrw3hu2o"
id="all-products-desktop-filters-price-On Sale"
name="price"
type="checkbox"
value="On Sale"
/>
<span
</code>
<label
class="Checkbox_root__rm3qrv1 Checkbox__rm3qrv0 sprinkles_display_inlineFlex_mobile__1xrw3huey sprinkles_alignItems_flexStart_mobile__1xrw3hue2 sprinkles_flexDirection_row_mobile__1xrw3hufa sprinkles_cursor_pointer_default__1xrw3hud6 Checkbox_variants_interface__rm3qrv5 typography_Body2_Bold__185e4nvs typography_BodySpacing__185e4nv1 typography_Lato_Bold__185e4nvb typography_LatoBase__185e4nva typography_overflowWrap__185e4nv9"
for="all-products-desktop-filters-price-On Sale"
type="checkbox"
>
<input
class="Checkbox_input__rm3qrv9 Checkbox__rm3qrv8 sprinkles_position_absolute_mobile__1xrw3hunu sprinkles_zIndex_z-1__1xrw3hu2o"
id="all-products-desktop-filters-price-On Sale"
name="price"
type="checkbox"
value="On Sale"
/>
<span