@@ -177,7 +177,7 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
177177 } ,
178178 {
179179 code : '<App prop={\'foo \\u00b7 bar\'}>foo</App>' ,
180- output : '<App prop=\' foo \\u00b7 bar\' >foo</App>' ,
180+ output : '<App prop=\" foo \\u00b7 bar\" >foo</App>' ,
181181 options : [ { props : 'never' } ] ,
182182 errors : [ { message : unnecessaryCurlyMessage } ]
183183 } ,
@@ -224,7 +224,7 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
224224 } ,
225225 {
226226 code : '<MyComponent prop={\'bar\'}>foo</MyComponent>' ,
227- output : '<MyComponent prop=\' bar\' >foo</MyComponent>' ,
227+ output : '<MyComponent prop=\" bar\" >foo</MyComponent>' ,
228228 errors : [ { message : unnecessaryCurlyMessage } ]
229229 } ,
230230 {
@@ -235,13 +235,25 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
235235 } ,
236236 {
237237 code : '<MyComponent prop={\'bar\'}>foo</MyComponent>' ,
238- output : '<MyComponent prop=\'bar\'>foo</MyComponent>' ,
238+ output : '<MyComponent prop=\"bar\">foo</MyComponent>' ,
239+ options : [ { props : 'never' } ] ,
240+ errors : [ { message : unnecessaryCurlyMessage } ]
241+ } ,
242+ {
243+ code : '<MyComponent prop={\"bar \'foo\' \"}>foo</MyComponent>' ,
244+ output : '<MyComponent prop=\"bar \'foo\' \">foo</MyComponent>' ,
245+ options : [ { props : 'never' } ] ,
246+ errors : [ { message : unnecessaryCurlyMessage } ]
247+ } ,
248+ {
249+ code : '<MyComponent prop={\'bar \"foo\" \'}>foo</MyComponent>' ,
250+ output : '<MyComponent prop=\"bar \\\"foo\\\" \">foo</MyComponent>' ,
239251 options : [ { props : 'never' } ] ,
240252 errors : [ { message : unnecessaryCurlyMessage } ]
241253 } ,
242254 {
243255 code : '<MyComponent prop=\'bar\'>foo</MyComponent>' ,
244- output : '<MyComponent prop={\' bar\' }>foo</MyComponent>' ,
256+ output : '<MyComponent prop={\" bar\" }>foo</MyComponent>' ,
245257 options : [ { props : 'always' } ] ,
246258 errors : [ { message : missingCurlyMessage } ]
247259 } ,
@@ -251,6 +263,18 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
251263 options : [ { children : 'always' } ] ,
252264 errors : [ { message : missingCurlyMessage } ]
253265 } ,
266+ {
267+ code : '<MyComponent>foo bar \'foo\'</MyComponent>' ,
268+ output : '<MyComponent>{\"foo bar \'foo\'\"}</MyComponent>' ,
269+ options : [ { children : 'always' } ] ,
270+ errors : [ { message : missingCurlyMessage } ]
271+ } ,
272+ {
273+ code : '<MyComponent>foo bar \"foo\"</MyComponent>' ,
274+ output : '<MyComponent>{\"foo bar \\\"foo\\\"\"}</MyComponent>' ,
275+ options : [ { children : 'always' } ] ,
276+ errors : [ { message : missingCurlyMessage } ]
277+ } ,
254278 {
255279 code : '<MyComponent>foo bar <App/></MyComponent>' ,
256280 output : '<MyComponent>{\"foo bar \"}<App/></MyComponent>' ,
@@ -265,15 +289,15 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
265289 } ,
266290 {
267291 code : '<MyComponent prop={\'bar\'}>{\'foo\'}</MyComponent>' ,
268- output : '<MyComponent prop=\' bar\' >foo</MyComponent>' ,
292+ output : '<MyComponent prop=\" bar\" >foo</MyComponent>' ,
269293 options : [ 'never' ] ,
270294 errors : [
271295 { message : unnecessaryCurlyMessage } , { message : unnecessaryCurlyMessage }
272296 ]
273297 } ,
274298 {
275299 code : '<MyComponent prop=\'bar\'>foo</MyComponent>' ,
276- output : '<MyComponent prop={\' bar\' }>{\"foo\"}</MyComponent>' ,
300+ output : '<MyComponent prop={\" bar\" }>{\"foo\"}</MyComponent>' ,
277301 options : [ 'always' ] ,
278302 errors : [
279303 { message : missingCurlyMessage } , { message : missingCurlyMessage }
@@ -299,35 +323,35 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
299323 } ,
300324 {
301325 code : '<App prop={\'foo "bar"\'}>foo</App>' ,
302- output : '<App prop=\' foo "bar"\' >foo</App>' ,
326+ output : '<App prop=\" foo \\\ "bar\\\"\" >foo</App>' ,
303327 errors : [ { message : unnecessaryCurlyMessage } ] ,
304328 options : [ { props : 'never' } ]
305329 } ,
306330 {
307331 code : '<App prop={\'foo\'} attr={\" foo \"} />' ,
308- output : '<App prop=\' foo\' attr=\" foo \" />' ,
332+ output : '<App prop=\" foo\" attr=\" foo \" />' ,
309333 errors : [
310334 { message : unnecessaryCurlyMessage } , { message : unnecessaryCurlyMessage }
311335 ] ,
312336 options : [ { props : 'never' } ]
313337 } ,
314338 {
315339 code : '<App prop=\'foo\' attr=\"bar\" />' ,
316- output : '<App prop={\' foo\' } attr={\"bar\"} />' ,
340+ output : '<App prop={\" foo\" } attr={\"bar\"} />' ,
317341 errors : [
318342 { message : missingCurlyMessage } , { message : missingCurlyMessage }
319343 ] ,
320344 options : [ { props : 'always' } ]
321345 } ,
322346 {
323347 code : '<App prop=\'foo\' attr={\"bar\"} />' ,
324- output : '<App prop={\' foo\' } attr={\"bar\"} />' ,
348+ output : '<App prop={\" foo\" } attr={\"bar\"} />' ,
325349 errors : [ { message : missingCurlyMessage } ] ,
326350 options : [ { props : 'always' } ]
327351 } ,
328352 {
329353 code : '<App prop={\'foo\'} attr=\'bar\' />' ,
330- output : '<App prop={\'foo\'} attr={\' bar\' } />' ,
354+ output : '<App prop={\'foo\'} attr={\" bar\" } />' ,
331355 errors : [ { message : missingCurlyMessage } ] ,
332356 options : [ { props : 'always' } ]
333357 }
0 commit comments