Skip to content

Commit

Permalink
test(resolve): add testcase to verify mainFields order is respected w…
Browse files Browse the repository at this point in the history
…ith custom browser handling
  • Loading branch information
dominikg committed Nov 27, 2023
1 parent 3ec0b77 commit 55ed154
Show file tree
Hide file tree
Showing 10 changed files with 43 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import { expect, test } from 'vitest'
import { page } from '~utils'

test('resolve.mainFields.custom-first', async () => {
expect(await page.textContent('.custom-browser-main-field')).toBe(
'resolved custom field',
)
})
6 changes: 6 additions & 0 deletions playground/resolve/__tests__/resolve.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,12 @@ test('resolve.mainFields', async () => {
expect(await page.textContent('.custom-main-fields')).toMatch('[success]')
})

test('resolve.mainFields.browser-first', async () => {
expect(await page.textContent('.custom-browser-main-field')).toBe(
'resolved browser field',
)
})

test('resolve.conditions', async () => {
expect(await page.textContent('.custom-condition')).toMatch('[success]')
})
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export const msg = 'resolved browser field'
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export const msg = 'resolved custom field'
1 change: 1 addition & 0 deletions playground/resolve/custom-browser-main-field/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export const msg = '[fail] resolved main field'
8 changes: 8 additions & 0 deletions playground/resolve/custom-browser-main-field/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"name": "@vitejs/test-resolve-custom-browser-main-field",
"private": true,
"version": "1.0.0",
"main": "index.js",
"browser": "index.browser.js",
"custom": "index.custom.js"
}
6 changes: 6 additions & 0 deletions playground/resolve/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,9 @@ <h2>resolve.extensions</h2>
<h2>resolve.mainFields</h2>
<p class="custom-main-fields"></p>

<h2>resolve.mainFields.custom-browser-main</h2>
<p class="custom-browser-main-field"></p>

<h2>resolve.conditions</h2>
<p class="custom-condition"></p>

Expand Down Expand Up @@ -341,6 +344,9 @@ <h2>resolve package that contains # in path</h2>
import { msg as customMainMsg } from '@vitejs/test-resolve-custom-main-field'
text('.custom-main-fields', customMainMsg)

import { msg as customBrowserMsg } from '@vitejs/test-resolve-custom-browser-main-field'
text('.custom-browser-main-field', customBrowserMsg)

import { msg as customConditionMsg } from '@vitejs/test-resolve-custom-condition'
text('.custom-condition', customConditionMsg)

Expand Down
1 change: 1 addition & 0 deletions playground/resolve/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
"@vitejs/test-resolve-browser-module-field3": "link:./browser-module-field3",
"@vitejs/test-resolve-custom-condition": "link:./custom-condition",
"@vitejs/test-resolve-custom-main-field": "link:./custom-main-field",
"@vitejs/test-resolve-custom-browser-main-field": "link:./custom-browser-main-field",
"@vitejs/test-resolve-exports-and-nested-scope": "link:./exports-and-nested-scope",
"@vitejs/test-resolve-exports-env": "link:./exports-env",
"@vitejs/test-resolve-exports-from-root": "link:./exports-from-root",
Expand Down
6 changes: 6 additions & 0 deletions playground/resolve/vite.config-mainfields-custom-first.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import config from './vite.config.js'
config.resolve.mainFields = [
'custom',
...config.resolve.mainFields.filter((f) => f !== 'custom'),
]
export default config
5 changes: 5 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 55ed154

Please sign in to comment.