Skip to content

Commit

Permalink
Fix tests for eslint@2.x
Browse files Browse the repository at this point in the history
  • Loading branch information
tihonove committed Aug 14, 2017
1 parent 316d818 commit 82a66c4
Showing 1 changed file with 32 additions and 42 deletions.
74 changes: 32 additions & 42 deletions tests/src/rules/order.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ import { RuleTester } from 'eslint'
const ruleTester = new RuleTester()
, rule = require('rules/order')

function withoutAutofixOutput(test) {
return Object.assign({}, test, { output: test.code })
}

ruleTester.run('order', rule, {
valid: [
// Default order using require
Expand Down Expand Up @@ -674,57 +678,53 @@ ruleTester.run('order', rule, {
}],
}),
// member expression of require
test({
test(withoutAutofixOutput({
code: `
var foo = require('./foo').bar;
var fs = require('fs');
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `./foo`',
}],
}),
})),
// nested member expression of require
test({
test(withoutAutofixOutput({
code: `
var foo = require('./foo').bar.bar.bar;
var fs = require('fs');
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `./foo`',
}],
}),
})),
// fix near nested member expression of require with newlines
test({
test(withoutAutofixOutput({
code: `
var foo = require('./foo').bar
.bar
.bar;
var fs = require('fs');
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `./foo`',
}],
}),
})),
// fix nested member expression of require with newlines
test({
test(withoutAutofixOutput({
code: `
var foo = require('./foo');
var fs = require('fs').bar
.bar
.bar;
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `./foo`',
}],
}),
})),
// Grouping import types
test({
code: `
Expand Down Expand Up @@ -1155,133 +1155,123 @@ ruleTester.run('order', rule, {
}),

// reorder cant cross function call
test({
test(withoutAutofixOutput({
code: `
var async = require('async');
fn_call();
var fs = require('fs');
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
// reorder cant cross variable assignemet
test({
test(withoutAutofixOutput({
code: `
var async = require('async');
var a = 1;
var fs = require('fs');
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
// reorder cant cross non plain requires
test({
test(withoutAutofixOutput({
code: `
var async = require('async');
var a = require('./value.js')(a);
var fs = require('fs');
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
// reorder fixes cannot be applied to non plain requires #1
test({
test(withoutAutofixOutput({
code: `
var async = require('async');
var fs = require('fs')(a);
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
// reorder fixes cannot be applied to non plain requires #2
test({
test(withoutAutofixOutput({
code: `
var async = require('async')(a);
var fs = require('fs');
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
// cannot require in case of not assignement require
test({
test(withoutAutofixOutput({
code: `
var async = require('async');
require('./aa');
var fs = require('fs');
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),

// reorder cant cross function call (import statement)
test({
test(withoutAutofixOutput({
code: `
import async from 'async';
fn_call();
import fs from 'fs';
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
// reorder cant cross variable assignemet (import statement)
test({
test(withoutAutofixOutput({
code: `
import async from 'async';
var a = 1;
import fs from 'fs';
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
// reorder cant cross non plain requires (import statement)
test({
test(withoutAutofixOutput({
code: `
import async from 'async';
var a = require('./value.js')(a);
import fs from 'fs';
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
// cannot reorder in case of not assignement import
test({
test(withoutAutofixOutput({
code: `
import async from 'async';
import './aa';
import fs from 'fs';
`,
output: null,
errors: [{
ruleId: 'order',
message: '`fs` import should occur before import of `async`',
}],
}),
})),
],
})

0 comments on commit 82a66c4

Please sign in to comment.