mirror of
https://github.com/vitest-dev/vitest.git
synced 2025-12-08 18:26:03 +00:00
53 lines
2.1 KiB
TypeScript
53 lines
2.1 KiB
TypeScript
import { defineConfig } from 'vite'
|
|
|
|
export default defineConfig({
|
|
plugins: [{
|
|
name: 'vite-plugin-imba',
|
|
transform(code, id) {
|
|
if (id.endsWith('frame.spec.imba')) {
|
|
// eslint-disable-next-line no-throw-literal
|
|
throw {
|
|
name: 'imba-parser error',
|
|
id,
|
|
message: 'Unexpected \'CALL_END\'',
|
|
code,
|
|
frame:
|
|
'4 | test("1+1") do\n5 | expect(1+1).toBe 2\n6 | frame.\n | ^\n7 |\n',
|
|
loc: {
|
|
line: 3,
|
|
column: 11,
|
|
file: id,
|
|
},
|
|
}
|
|
}
|
|
if (id.endsWith('.imba')) {
|
|
return {
|
|
code:
|
|
'\n/*body*/\nimport {it,expect} from \'vitest\';\n\nexport function add(...args){\n\t\n\treturn args.reduce(function(a,b) { return a + b; },0);\n};\n\nit("add",function() {\n\t\n\texpect(add()).toBe(0);\n\texpect(add(1)).toBe(3);\n\treturn expect(add(1,2,3)).toBe(6);\n});',
|
|
map: {
|
|
version: 3,
|
|
file: 'add-in-imba.test.imba',
|
|
names: [],
|
|
sourceRoot: '',
|
|
sources: ['add-in-imba.test.imba'],
|
|
sourcesContent: [
|
|
'import {it, expect} from \'vitest\'\n\nexport def add(...args)\n\treturn args.reduce((do(a, b) a + b), 0)\n\nit "add", do\n\texpect(add()).toBe 0\n\texpect(add(1)).toBe 3\n\texpect(add(1, 2, 3)).toBe 6\n',
|
|
],
|
|
mappings:
|
|
';;AAAA,MAAM,EAAE,EAAE,CAAE,MAAM,OAAO,QAAQ;;AAEjC,MAAM,CAAC,QAAG,CAAC,GAAG,IAAI,IAAI,CAAC;;CACtB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAE,QAAE,CAAC,CAAC,CAAE,CAAC,IAAE,OAAA,CAAC,CAAC,CAAC,CAAC,CAAC,IAAG,CAAC,CAAC;CAAA;;AAExC,EAAE,CAAC,KAAK,CAAE,QAAE,GAAA;;CACX,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;CACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;CACrB,OAAA,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;CAAA,CAH1B;AAIF;',
|
|
},
|
|
}
|
|
}
|
|
},
|
|
}],
|
|
test: {
|
|
isolate: false,
|
|
pool: 'forks',
|
|
include: ['**/*.{test,spec}.{imba,?(c|m)[jt]s?(x)}'],
|
|
setupFiles: ['./setup.js'],
|
|
expect: {
|
|
requireAssertions: true,
|
|
},
|
|
},
|
|
})
|