Skip to content

Commit

Permalink
Add more tests for exports-last
Browse files Browse the repository at this point in the history
  • Loading branch information
k15a committed Mar 1, 2017
1 parent 531d04d commit baa585d
Showing 1 changed file with 76 additions and 14 deletions.
90 changes: 76 additions & 14 deletions tests/src/rules/exports-last.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,45 +9,107 @@ const errors = ['Export statements should appear at the end of the file']

ruleTester.run('exports-last', rule, {
valid: [
// Empty file
test({
code: '',
}),
test({
// No exports
code: `
const foo = 'bar';
const bar = 'baz';
const foo = 'bar'
const bar = 'baz'
`,
}),
test({
code: `
const foo = 'bar';
export {foo};
const foo = 'bar'
export {foo}
`,
}),
test({
code: `
const foo = 'bar';
export default foo;
const foo = 'bar'
export default foo
`,
}),
// Only exports
test({
code: `
const foo = 'bar';
export default foo;
export const bar = true;
export default foo
export const bar = true
`,
}),
test({
code: `
const foo = 'bar'
export default foo
export const bar = true
`,
}),
// Multiline export
test({
code: `
const foo = 'bar'
export default function foo () {
const very = 'multiline'
}
export const bar = true
`,
}),
// Many exports
test({
code: `
const foo = 'bar'
export default foo
export const so = 'many'
export const exports = ':)'
export const i = 'cant'
export const even = 'count'
export const how = 'many'
`,
}),
// Export all
test({
code: `
export * from './foo'
`,
}),

],
invalid: [
// Default export before variable declaration
test({
code: `
export default 'bar'
const bar = true
`,
errors,
}),
// Named export before variable declaration
test({
code: `
export const foo = 'bar'
const bar = true
`,
errors,
}),
// Export all before variable declaration
test({
code: `
export default 'bar';
const bar = true;
export * from './foo'
const bar = true
`,
errors,
}),
// Many exports arround variable declaration
test({
code: `
export const foo = 'bar';
const bar = true;
export default 'such foo many bar'
export const so = 'many'
const foo = 'bar'
export const exports = ':)'
export const i = 'cant'
export const even = 'count'
export const how = 'many'
`,
errors,
}),
Expand Down

0 comments on commit baa585d

Please sign in to comment.