summaryrefslogtreecommitdiff
path: root/test/lisp/progmodes/js-resources/jsx-unclosed-2.jsx
blob: fb665b96a43aa6afd47ce2f11717b19c1c8f58ba (plain)
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
// Local Variables:
// indent-tabs-mode: nil
// js-indent-level: 2
// End:

// The following tests go below any comments to avoid including
// misindented comments among the erroring lines.

// Don’t misinterpret inequality operators as JSX.
for (; i < length;) void 0
if (foo > bar) void 0

// Don’t misintrepet inequalities within JSX, either.
<div>
  {foo < bar}
</div>

// Don’t even misinterpret unary operators as JSX.
if (foo < await bar) void 0
while (await foo > bar) void 0

<div>
  {foo < await bar}
</div>

// Allow unary keyword names as null-valued JSX attributes.
// (As if this will EVER happen…)
<Foo yield>
  <Bar void>
    <Baz
      zorp
      typeof>
      <Please do_n0t delete this_stupidTest >
        How would we ever live without unary support
      </Please>
    </Baz>
  </Bar>
</Foo>

// “-” is not allowed in a JSXBoundaryElement’s name.
<ABC />
  <A-B-C /> // Weirdly-indented “continued expression.”

// “-” may be used in a JSXAttribute’s name.
<Foo a-b-c=""
     x-y-z="" />

// Weird spaces should be tolerated.
< div >
  < div >
    < div
      attr=""
      / >
    < div
      attr=""
      / >
  < / div>
< / div >

// Non-ASCII identifiers are acceptable.
<Über>
  <Québec διακριτικός sueño="">
    Guten Tag!
  </Québec>
</Über>