Skip to content

Commit e231f44

Browse files
golopotljharb
andcommitted
[tests] no-unescaped-entities: skip test cases that are now parsing errors in [email protected]
Co-authored-by: Chiawen Chen <[email protected]> Co-authored-by: Jordan Harband <[email protected]>
1 parent 434b45f commit e231f44

File tree

2 files changed

+23
-9
lines changed

2 files changed

+23
-9
lines changed

package.json

+7-1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
"object.values": "^1.1.1",
3838
"prop-types": "^15.7.2",
3939
"resolve": "^1.15.1",
40+
"semver": "^6.3.0",
4041
"string.prototype.matchall": "^4.0.2",
4142
"xregexp": "^4.3.0"
4243
},
@@ -69,5 +70,10 @@
6970
"eslintplugin",
7071
"react"
7172
],
72-
"license": "MIT"
73+
"license": "MIT",
74+
"greenkeeper": {
75+
"ignore": [
76+
"semver"
77+
]
78+
}
7379
}

tests/lib/rules/no-unescaped-entities.js

+16-8
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,14 @@
99
// Requirements
1010
// ------------------------------------------------------------------------------
1111

12+
const semver = require('semver');
13+
14+
let allowsInvalidJSX = false;
15+
try {
16+
// eslint-disable-next-line import/no-extraneous-dependencies, global-require
17+
allowsInvalidJSX = semver.satisfies(require('acorn-jsx/package.json').version, '< 5.2');
18+
} catch (e) { /**/ }
19+
1220
const RuleTester = require('eslint').RuleTester;
1321
const rule = require('../../../lib/rules/no-unescaped-entities');
1422

@@ -107,7 +115,7 @@ ruleTester.run('no-unescaped-entities', rule, {
107115
],
108116

109117
invalid: [
110-
{
118+
(allowsInvalidJSX && {
111119
code: `
112120
var Hello = createReactClass({
113121
render: function() {
@@ -116,7 +124,7 @@ ruleTester.run('no-unescaped-entities', rule, {
116124
});
117125
`,
118126
errors: [{message: '`>` can be escaped with `&gt;`.'}]
119-
}, {
127+
}), {
120128
code: `
121129
var Hello = createReactClass({
122130
render: function() {
@@ -126,7 +134,7 @@ ruleTester.run('no-unescaped-entities', rule, {
126134
`,
127135
parser: parsers.BABEL_ESLINT,
128136
errors: [{message: '`>` can be escaped with `&gt;`.'}]
129-
}, {
137+
}, (allowsInvalidJSX && {
130138
code: `
131139
var Hello = createReactClass({
132140
render: function() {
@@ -137,7 +145,7 @@ ruleTester.run('no-unescaped-entities', rule, {
137145
});
138146
`,
139147
errors: [{message: '`>` can be escaped with `&gt;`.'}]
140-
}, {
148+
}), {
141149
code: `
142150
var Hello = createReactClass({
143151
render: function() {
@@ -158,7 +166,7 @@ ruleTester.run('no-unescaped-entities', rule, {
158166
});
159167
`,
160168
errors: [{message: '`\'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;`.'}]
161-
}, {
169+
}, (allowsInvalidJSX && {
162170
code: `
163171
var Hello = createReactClass({
164172
render: function() {
@@ -171,7 +179,7 @@ ruleTester.run('no-unescaped-entities', rule, {
171179
{message: '`>` can be escaped with `&gt;`.'},
172180
{message: '`>` can be escaped with `&gt;`.'}
173181
]
174-
}, {
182+
}), (allowsInvalidJSX && {
175183
code: `
176184
var Hello = createReactClass({
177185
render: function() {
@@ -180,7 +188,7 @@ ruleTester.run('no-unescaped-entities', rule, {
180188
});
181189
`,
182190
errors: [{message: '`}` can be escaped with `&#125;`.'}]
183-
}, {
191+
}), {
184192
code: `
185193
var Hello = createReactClass({
186194
render: function() {
@@ -231,5 +239,5 @@ ruleTester.run('no-unescaped-entities', rule, {
231239
}]
232240
}]
233241
}
234-
]
242+
].filter(Boolean)
235243
});

0 commit comments

Comments
 (0)