mirror of https://github.com/sveltejs/svelte
parent
e0c67b5775
commit
fe86552670
@ -1,32 +1,19 @@
|
|||||||
import { readFileSync, writeFileSync } from 'fs';
|
import { replaceIfUpdated } from "../tiny-glob";
|
||||||
import { glob } from '../tiny-glob';
|
|
||||||
|
|
||||||
// this file will replace all the expected.js files with their _actual
|
// this file will replace all the expected.js files with their _actual
|
||||||
// equivalents. Only use it when you're sure that you haven't
|
// equivalents. Only use it when you're sure that you haven't
|
||||||
// broken anything!
|
// broken anything!
|
||||||
const svelte = (function loadSvelte(test) {
|
|
||||||
process.env.TEST = test ? 'true' : '';
|
|
||||||
const resolved = require.resolve('../../compiler.js');
|
|
||||||
delete require.cache[resolved];
|
|
||||||
return require(resolved);
|
|
||||||
})(false);
|
|
||||||
|
|
||||||
glob('samples/*/input.svelte', { cwd: __dirname })
|
replaceIfUpdated((compile, check) => {
|
||||||
.forEach((file) => {
|
try {
|
||||||
try {
|
check("output.json", compile({ generate: false }).ast);
|
||||||
writeFileSync(
|
} catch (e) {
|
||||||
`${__dirname}/${file.replace('input.svelte', 'output.json')}`,
|
if (e.name !== "ParseError") throw e;
|
||||||
JSON.stringify(
|
check("error.json", {
|
||||||
svelte.compile(readFileSync(`${__dirname}/${file}`, 'utf-8').replace(/\s+$/, '').replace(/\r/g, ''), { generate: false }).ast,
|
code: e.code,
|
||||||
null,
|
message: e.message,
|
||||||
'\t'
|
start: e.start,
|
||||||
)
|
pos: e.pos,
|
||||||
);
|
});
|
||||||
} catch (e) {
|
}
|
||||||
if (e.name !== 'ParseError') throw e;
|
}, __dirname);
|
||||||
writeFileSync(
|
|
||||||
`${__dirname}/${file.replace('input.svelte', 'error.json')}`,
|
|
||||||
JSON.stringify({ code:e.code, message: e.message, pos:e.pos, start:e.start }, null, '\t')
|
|
||||||
);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
Loading…
Reference in new issue