Skip to content

Commit

Permalink
fix(espower): stop capturing SequenceExpression itself
Browse files Browse the repository at this point in the history
since SequenceExpressions are not enclosed in parentheses in some cases
  • Loading branch information
twada committed Jun 21, 2016
1 parent 55a1ac5 commit e8acbc6
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 10 deletions.
1 change: 0 additions & 1 deletion lib/rules/to-be-captured.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ var caputuringTargetTypes = [
// syntax.Property,
syntax.ObjectExpression,
syntax.ArrayExpression,
syntax.SequenceExpression,
// syntax.ConditionalExpression,
syntax.Identifier,
syntax.MemberExpression,
Expand Down
19 changes: 10 additions & 9 deletions test/fixtures/SequenceExpression/expected.js
Original file line number Diff line number Diff line change
@@ -1,26 +1,27 @@
'use strict';
assert(assert._expr(assert._capt((2, 1, 0), 'arguments/0'), {
content: 'assert((2, 1, 0))',
filepath: 'path/to/some_test.js',
line: 3
}));
assert(assert._expr(assert._capt(assert._capt((assert._capt(foo, 'arguments/0/left/expressions/0'), assert._capt(bar, 'arguments/0/left/expressions/1')), 'arguments/0/left') === assert._capt(baz, 'arguments/0/right'), 'arguments/0'), {
assert((2, 1, 0));
assert(assert._expr(assert._capt((assert._capt(foo, 'arguments/0/left/expressions/0'), assert._capt(bar, 'arguments/0/left/expressions/1')) === assert._capt(baz, 'arguments/0/right'), 'arguments/0'), {
content: 'assert((foo, bar) === baz)',
filepath: 'path/to/some_test.js',
line: 5
}));
assert(assert._expr(assert._capt(toto(assert._capt((assert._capt(tata, 'arguments/0/arguments/0/expressions/0'), assert._capt(titi, 'arguments/0/arguments/0/expressions/1')), 'arguments/0/arguments/0')), 'arguments/0'), {
assert(assert._expr(assert._capt(toto((assert._capt(tata, 'arguments/0/arguments/0/expressions/0'), assert._capt(titi, 'arguments/0/arguments/0/expressions/1'))), 'arguments/0'), {
content: 'assert(toto((tata, titi)))',
filepath: 'path/to/some_test.js',
line: 7
}));
assert(assert._expr(assert._capt((assert._capt(foo, 'arguments/0/expressions/0'), assert._capt((assert._capt(bar, 'arguments/0/expressions/1/expressions/0'), assert._capt(baz, 'arguments/0/expressions/1/expressions/1')), 'arguments/0/expressions/1')), 'arguments/0'), {
assert(assert._expr((assert._capt(foo, 'arguments/0/expressions/0'), (assert._capt(bar, 'arguments/0/expressions/1/expressions/0'), assert._capt(baz, 'arguments/0/expressions/1/expressions/1'))), {
content: 'assert((foo, (bar, baz)))',
filepath: 'path/to/some_test.js',
line: 9
}));
assert(assert._expr(assert._capt((assert._capt((assert._capt((assert._capt((assert._capt((assert._capt(foo, 'arguments/0/expressions/0/expressions/0/expressions/0/expressions/0/expressions/0'), assert._capt(bar, 'arguments/0/expressions/0/expressions/0/expressions/0/expressions/0/expressions/1')), 'arguments/0/expressions/0/expressions/0/expressions/0/expressions/0'), assert._capt(baz, 'arguments/0/expressions/0/expressions/0/expressions/0/expressions/1')), 'arguments/0/expressions/0/expressions/0/expressions/0'), assert._capt(toto, 'arguments/0/expressions/0/expressions/0/expressions/1')), 'arguments/0/expressions/0/expressions/0'), assert._capt(tata, 'arguments/0/expressions/0/expressions/1')), 'arguments/0/expressions/0'), assert._capt(titi, 'arguments/0/expressions/1')), 'arguments/0'), {
assert(assert._expr((((((assert._capt(foo, 'arguments/0/expressions/0/expressions/0/expressions/0/expressions/0/expressions/0'), assert._capt(bar, 'arguments/0/expressions/0/expressions/0/expressions/0/expressions/0/expressions/1')), assert._capt(baz, 'arguments/0/expressions/0/expressions/0/expressions/0/expressions/1')), assert._capt(toto, 'arguments/0/expressions/0/expressions/0/expressions/1')), assert._capt(tata, 'arguments/0/expressions/0/expressions/1')), assert._capt(titi, 'arguments/0/expressions/1')), {
content: 'assert((((((foo, bar), baz), toto), tata), titi))',
filepath: 'path/to/some_test.js',
line: 11
}));
assert(assert._expr((assert._capt(y = assert._capt(x, 'arguments/0/expressions/0/right'), 'arguments/0/expressions/0'), assert._capt(z, 'arguments/0/expressions/1')), {
content: 'assert((y = x, z))',
filepath: 'path/to/some_test.js',
line: 13
}));
2 changes: 2 additions & 0 deletions test/fixtures/SequenceExpression/fixture.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,5 @@ assert(toto((tata, titi)));
assert((foo, (bar, baz)));

assert((((((foo, bar), baz), toto), tata), titi));

assert((y = x, z));

0 comments on commit e8acbc6

Please sign in to comment.