@@ -98,6 +98,10 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
9898 code : '<MyComponent>{<App/>}{"123"}</MyComponent>' ,
9999 options : [ { children : 'never' } ]
100100 } ,
101+ {
102+ code : '<App>{\"foo \'bar\' \\\"foo\\\" bar\"}</App>' ,
103+ options : [ { children : 'never' } ]
104+ } ,
101105 {
102106 code : '<MyComponent prop={\'bar\'}>foo</MyComponent>' ,
103107 options : [ { props : 'always' } ]
@@ -205,6 +209,12 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
205209 options : [ { props : 'never' } ] ,
206210 errors : [ { message : unnecessaryCurlyMessage } ]
207211 } ,
212+ {
213+ code : '<App prop={`foo "foo" bar`}>foo</App>' ,
214+ output : '<App prop="foo \\\"foo\\\" bar">foo</App>' ,
215+ options : [ { props : 'never' } ] ,
216+ errors : [ { message : unnecessaryCurlyMessage } ]
217+ } ,
208218 {
209219 code : '<App prop={`foo`}>foo</App>' ,
210220 output : '<App prop="foo">foo</App>' ,
@@ -217,6 +227,12 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
217227 options : [ { children : 'never' } ] ,
218228 errors : [ { message : unnecessaryCurlyMessage } ]
219229 } ,
230+ {
231+ code : '<App>{`foo "foo" bar`}</App>' ,
232+ output : '<App>foo "foo" bar</App>' ,
233+ options : [ { children : 'never' } ] ,
234+ errors : [ { message : unnecessaryCurlyMessage } ]
235+ } ,
220236 {
221237 code : '<MyComponent>{\'foo\'}</MyComponent>' ,
222238 output : '<MyComponent>foo</MyComponent>' ,
@@ -257,6 +273,24 @@ ruleTester.run('jsx-curly-brace-presence', rule, {
257273 options : [ { props : 'always' } ] ,
258274 errors : [ { message : missingCurlyMessage } ]
259275 } ,
276+ {
277+ code : '<MyComponent prop=\"foo \'bar\'\">foo</MyComponent>' ,
278+ output : '<MyComponent prop={\"foo \'bar\'\"}>foo</MyComponent>' ,
279+ options : [ { props : 'always' } ] ,
280+ errors : [ { message : missingCurlyMessage } ]
281+ } ,
282+ {
283+ code : '<MyComponent prop=\'foo "bar"\'>foo</MyComponent>' ,
284+ output : '<MyComponent prop={\"foo \\\"bar\\\"\"}>foo</MyComponent>' ,
285+ options : [ { props : 'always' } ] ,
286+ errors : [ { message : missingCurlyMessage } ]
287+ } ,
288+ {
289+ code : '<MyComponent prop=\"foo \'bar\'\">foo</MyComponent>' ,
290+ output : '<MyComponent prop={\"foo \'bar\'\"}>foo</MyComponent>' ,
291+ options : [ { props : 'always' } ] ,
292+ errors : [ { message : missingCurlyMessage } ]
293+ } ,
260294 {
261295 code : '<MyComponent>foo bar </MyComponent>' ,
262296 output : '<MyComponent>{\"foo bar \"}</MyComponent>' ,
0 commit comments