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 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
reported: {
options = {
booleans: true,
comparisons: true,
conditionals: true,
dead_code: true,
evaluate: true,
hoist_funs: true,
if_return: true,
join_vars: true,
keep_fargs: true,
loops: true,
properties: true,
sequences: true,
side_effects: true,
unused: true,
}
input: {
function f1() {
if (a == 1 || b == 2)
foo();
}
function f2() {
if (!(a == 1 || b == 2));
else
foo();
}
}
expect: {
function f1() {
1 != a && 2 != b || foo();
}
function f2() {
1 != a && 2 != b || foo();
}
}
}
test_negated_is_best: {
options = {
booleans: true,
comparisons: true,
conditionals: true,
dead_code: true,
evaluate: true,
hoist_funs: true,
if_return: true,
join_vars: true,
keep_fargs: true,
loops: true,
properties: true,
sequences: true,
side_effects: true,
unused: true,
}
input: {
function f3() {
if (a == 1 | b == 2)
foo();
}
function f4() {
if (!(a == 1 | b == 2));
else
foo();
}
function f5() {
if (a == 1 && b == 2)
foo();
}
function f6() {
if (!(a == 1 && b == 2));
else
foo();
}
function f7() {
if (a == 1 || b == 2)
foo();
else
return bar();
}
}
expect: {
function f3() {
1 == a | 2 == b && foo();
}
function f4() {
1 == a | 2 == b && foo();
}
function f5() {
1 == a && 2 == b && foo();
}
function f6() {
1 == a && 2 == b && foo();
}
function f7() {
if (1 != a && 2 != b)
return bar();
foo();
}
}
}
|