mirror of https://github.com/sveltejs/svelte
parent
d5408003ef
commit
c842d1617f
@ -1,27 +1,26 @@
|
||||
import { getLocator } from 'locate-character';
|
||||
import { assert_mapped } from '../../helpers';
|
||||
import { COMMON, STYLES } from './_config';
|
||||
|
||||
export function test({ assert, input, preprocessed }) {
|
||||
|
||||
const assertMapped = (locateInput, code, filename) => {
|
||||
const sourceLoc = locateInput(code);
|
||||
const transformedLoc = preprocessed.locate_1(code);
|
||||
assert.deepEqual(
|
||||
preprocessed.mapConsumer.originalPositionFor(transformedLoc),
|
||||
{
|
||||
source: filename,
|
||||
name: null,
|
||||
line: sourceLoc.line + 1,
|
||||
column: sourceLoc.column
|
||||
},
|
||||
`failed to locate "${code}" in "${filename}"`
|
||||
);
|
||||
};
|
||||
|
||||
export function test({ input, preprocessed }) {
|
||||
// Transformed script, main file
|
||||
assertMapped(input.locate, 'Divs ftw!', 'input.svelte');
|
||||
assert_mapped({
|
||||
filename: 'input.svelte',
|
||||
code: 'Divs ftw!',
|
||||
input: input.locate,
|
||||
preprocessed
|
||||
});
|
||||
|
||||
// External files
|
||||
assertMapped(getLocator(COMMON), 'height: 100%;', 'common.scss');
|
||||
assertMapped(getLocator(STYLES), 'color: orange;', 'styles.scss');
|
||||
assert_mapped({
|
||||
filename: 'common.scss',
|
||||
code: 'height: 100%;',
|
||||
input: COMMON,
|
||||
preprocessed
|
||||
});
|
||||
assert_mapped({
|
||||
filename: 'styles.scss',
|
||||
code: 'color: orange;',
|
||||
input: STYLES,
|
||||
preprocessed
|
||||
});
|
||||
}
|
||||
|
@ -1,17 +1,9 @@
|
||||
export function test({ assert, input, preprocessed }) {
|
||||
const content = '<h1>Hello world!</h1>';
|
||||
import { assert_mapped } from '../../helpers';
|
||||
|
||||
const original = input.locate(content);
|
||||
const transformed = preprocessed.locate_1('<h1>Hello world!</h1>');
|
||||
|
||||
assert.deepEqual(
|
||||
preprocessed.mapConsumer.originalPositionFor(transformed),
|
||||
{
|
||||
source: 'input.svelte',
|
||||
name: null,
|
||||
line: original.line + 1,
|
||||
column: original.column
|
||||
},
|
||||
`failed to locate "${content}"`
|
||||
);
|
||||
export function test({ input, preprocessed }) {
|
||||
assert_mapped({
|
||||
code: '<h1>Hello world!</h1>',
|
||||
input: input.locate,
|
||||
preprocessed
|
||||
});
|
||||
}
|
||||
|
@ -1,30 +1,21 @@
|
||||
export function test({ assert, input, preprocessed }) {
|
||||
const assertMapped = (source, transformed) => {
|
||||
const sourceLoc = input.locate(source);
|
||||
const transformedLoc = preprocessed.locate_1(transformed);
|
||||
assert.deepEqual(
|
||||
preprocessed.mapConsumer.originalPositionFor(transformedLoc),
|
||||
{
|
||||
source: 'input.svelte',
|
||||
name: null,
|
||||
line: sourceLoc.line + 1,
|
||||
column: sourceLoc.column
|
||||
},
|
||||
`failed to locate "${transformed}"`
|
||||
);
|
||||
};
|
||||
|
||||
const assertNotMapped = (code) => {
|
||||
const transformedLoc = preprocessed.locate_1(code);
|
||||
assert.strictEqual(transformedLoc, undefined, `failed to remove "${code}"`);
|
||||
};
|
||||
import { assert_mapped, assert_not_located } from '../../helpers';
|
||||
|
||||
export function test({ input, preprocessed }) {
|
||||
// TS => JS code
|
||||
assertMapped('let count: number = 0;', 'let count = 0;');
|
||||
assert_mapped({
|
||||
code: 'let count = 0;',
|
||||
input_code: 'let count: number = 0;',
|
||||
input: input.locate,
|
||||
preprocessed
|
||||
});
|
||||
|
||||
// Markup, not touched
|
||||
assertMapped('<h1>Hello world!</h1>', '<h1>Hello world!</h1>');
|
||||
|
||||
assert_mapped({
|
||||
code: '<h1>Hello world!</h1>',
|
||||
input: input.locate,
|
||||
preprocessed
|
||||
});
|
||||
|
||||
// TS types, removed
|
||||
assertNotMapped('ITimeoutDestroyer');
|
||||
assert_not_located('ITimeoutDestroyer', preprocessed.locate_1);
|
||||
}
|
||||
|
Loading…
Reference in new issue