/
define.spec.ts
25 lines (24 loc) · 1.02 KB
/
define.spec.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
test('string', async () => {
const defines = require('../vite.config.js').define
expect(await page.textContent('.exp')).toBe(String(eval(defines.__EXP__)))
expect(await page.textContent('.string')).toBe(JSON.parse(defines.__STRING__))
expect(await page.textContent('.number')).toBe(String(defines.__NUMBER__))
expect(await page.textContent('.boolean')).toBe(String(defines.__BOOLEAN__))
expect(await page.textContent('.object')).toBe(
JSON.stringify(defines.__OBJ__, null, 2)
)
expect(await page.textContent('.env-var')).toBe(
JSON.parse(defines['process.env.SOMEVAR'])
)
expect(await page.textContent('.process-as-property')).toBe(
defines.__OBJ__.process.env.SOMEVAR
)
expect(await page.textContent('.spread-object')).toBe(
JSON.stringify({ SOMEVAR: defines['process.env.SOMEVAR'] })
)
expect(await page.textContent('.spread-array')).toBe(
JSON.stringify([...defines.__STRING__])
)
// html would't need to define replacement
expect(await page.textContent('.exp-define')).toBe('__EXP__')
})