-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathno-animate-toggle.js
More file actions
49 lines (43 loc) · 1.34 KB
/
no-animate-toggle.js
File metadata and controls
49 lines (43 loc) · 1.34 KB
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
'use strict';
const rule = require( '../../src/rules/no-animate-toggle' );
const RuleTester = require( '../../tools/rule-tester' );
const showError = 'Prefer CSS transitions to .show';
const hideError = 'Prefer CSS transitions to .hide';
const toggleError = 'Prefer CSS transitions to .toggle';
const ruleTester = new RuleTester();
ruleTester.run( 'no-animate-toggle', rule, {
valid: [
'$div.show()',
'$("div").show()',
'$("div").show',
'$.show("fast")',
'$div.toggle()',
'$("div").toggle()',
'$("div").toggle',
'$div.toggle(false)',
'$div.toggle(true)',
'$div.toggle(variableCouldBeBoolean)',
'$div.toggle(!!"0")',
'$div.toggle(getBoolean())'
],
invalid: [
...[
'$("div").show("fast")',
'$div.show(500)',
'$("div").first().show({duration:"slow"})',
'$("div").append($("input").show({duration:"slow"}))'
].map( ( code ) => ( { code, errors: [ showError ] } ) ),
...[
'$("div").hide("fast")',
'$div.hide(500)',
'$("div").first().hide({duration:"slow"})',
'$("div").append($("input").hide({duration:"slow"}))'
].map( ( code ) => ( { code, errors: [ hideError ] } ) ),
...[
'$("div").toggle("fast")',
'$div.toggle(500)',
'$("div").first().toggle({duration:"slow"})',
'$("div").append($("input").toggle({duration:"slow"}))'
].map( ( code ) => ( { code, errors: [ toggleError ] } ) )
]
} );