-
Notifications
You must be signed in to change notification settings - Fork 73
/
no-unused-variables.js
56 lines (51 loc) · 1.47 KB
/
no-unused-variables.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
var ruleTestBase = require('../rule-test-base');
var rule = require('../../../dist/rules/no-unused-variables.js');
describe('No Unused Variables Rule', function() {
it('doesn\'t raise errors when there are no violations', function() {
var runTest = ruleTestBase.createRuleTest(rule, '');
runTest('no-unused-variables/NoViolations.feature', {}, []);
});
it('detects unused scenario variables', function() {
var runTest = ruleTestBase.createRuleTest(rule,
'Step variable "<%= variable %>" does not exist the in examples table');
runTest('no-unused-variables/UnusedStepVariables.feature', {}, [{
line: 5,
messageElements: {variable: 'b'}
},
{
line: 11,
messageElements: {variable: 'b'}
},
{
line: 23,
messageElements: {variable: 'b'}
},
{
line: 34,
messageElements: {variable: 'b'}
}]);
});
it('detects unused variables in the examples table', function() {
var runTest = ruleTestBase.createRuleTest(rule,
'Examples table variable "<%= variable %>" is not used in any step');
runTest('no-unused-variables/UnusedExampleVariables.feature', {}, [{
line: 7,
messageElements: {variable: 'b'}
}, {
line: 19,
messageElements: {variable: 'b'}
},
{
line: 28,
messageElements: {variable: 'b'}
},
{
line: 42,
messageElements: {variable: 'b'}
},
{
line: 54,
messageElements: {variable: 'b'}
}]);
});
});