/
standalone-needlessDisables.test.js
61 lines (53 loc) · 1.53 KB
/
standalone-needlessDisables.test.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
57
58
59
60
61
'use strict';
const path = require('path');
const replaceBackslashes = require('./replaceBackslashes');
const standalone = require('../standalone');
const fixturesPath = replaceBackslashes(path.join(__dirname, 'fixtures'));
it('standalone with input css and `reportNeedlessDisables`', () => {
const config = {
quiet: true,
rules: {
'block-no-empty': true,
'color-named': 'never',
},
};
return standalone({
code: '/* stylelint-disable color-named */\na {}',
config,
reportNeedlessDisables: true,
}).then((linted) => {
const needlessDisables = linted.needlessDisables;
expect(typeof needlessDisables).toBe('object');
expect(needlessDisables).toHaveLength(1);
expect(needlessDisables[0].ranges).toHaveLength(1);
expect(needlessDisables[0].ranges[0]).toEqual({
start: 1,
unusedRule: 'color-named',
});
});
});
it('standalone with input file(s) and `reportNeedlessDisables`', () => {
const config = {
quiet: true,
rules: {
'block-no-empty': true,
'color-named': 'never',
},
};
return standalone({
files: replaceBackslashes(path.join(fixturesPath, 'empty-block-with-disables.css')),
config,
reportNeedlessDisables: true,
}).then((linted) => {
const needlessDisables = linted.needlessDisables;
expect(typeof needlessDisables).toBe('object');
expect(needlessDisables).toHaveLength(1);
expect(needlessDisables[0].source).toBe(
path.join(fixturesPath, 'empty-block-with-disables.css'),
);
expect(needlessDisables[0].ranges[0]).toEqual({
start: 1,
unusedRule: 'color-named',
});
});
});