File tree Expand file tree Collapse file tree 3 files changed +44
-0
lines changed
packages/svelte/tests/print Expand file tree Collapse file tree 3 files changed +44
-0
lines changed Original file line number Diff line number Diff line change 1+ <script >
2+ let name = ' world'
3+ </script >
4+
5+ <h1 >
6+ Hello {name }!
7+ </h1 >
Original file line number Diff line number Diff line change 1+ <script >
2+ let name = ' world' ;
3+ </script >
4+
5+ <h1 >Hello {name }!</h1 >
Original file line number Diff line number Diff line change 1+ import * as fs from 'node:fs' ;
2+ import { assert , it } from 'vitest' ;
3+ import { parse , print } from 'svelte/compiler' ;
4+ import { try_load_json } from '../helpers.js' ;
5+ import { suite , type BaseTest } from '../suite.js' ;
6+ import { walk } from 'zimmerframe' ;
7+ import type { AST } from 'svelte/compiler' ;
8+
9+ interface ParserTest extends BaseTest { }
10+
11+ const { test, run } = suite < ParserTest > ( async ( config , cwd ) => {
12+ const input = fs . readFileSync ( `${ cwd } /input.svelte` , 'utf-8' ) ;
13+
14+ const ast = parse ( input , { modern : true } ) ;
15+ const output = print ( ast ) ;
16+
17+ // run `UPDATE_SNAPSHOTS=true pnpm test parser` to update parser tests
18+ if ( process . env . UPDATE_SNAPSHOTS ) {
19+ fs . writeFileSync ( `${ cwd } /output.svelte` , output . code ) ;
20+ } else {
21+ fs . writeFileSync ( `${ cwd } /_actual.svelte` , output . code ) ;
22+
23+ const file = `${ cwd } /output.svelte` ;
24+
25+ const expected = fs . existsSync ( file ) ? fs . readFileSync ( file , 'utf-8' ) : '' ;
26+ assert . deepEqual ( output . code , expected ) ;
27+ }
28+ } ) ;
29+
30+ export { test } ;
31+
32+ await run ( __dirname ) ;
You can’t perform that action at this time.
0 commit comments