mirror of
https://github.com/masscollaborationlabs/emacs.git
synced 2025-07-09 13:40:50 +00:00

* test/lisp/progmodes/js-tests.el (ert-x): Require. (js-deftest-indent): New macro. Use it to define tests for indenting the below files. * test/manual/indent/js-chain.js: * test/manual/indent/js-indent-align-list-continuation-nil.js: * test/manual/indent/js-indent-init-dynamic.js: * test/manual/indent/js-indent-init-t.js: * test/manual/indent/js.js: * test/manual/indent/jsx-align-gt-with-lt.jsx: * test/manual/indent/jsx-comment-string.jsx: * test/manual/indent/jsx-indent-level.jsx: * test/manual/indent/jsx-quote.jsx: * test/manual/indent/jsx-self-closing.jsx: * test/manual/indent/jsx-unclosed-1.jsx: * test/manual/indent/jsx-unclosed-2.jsx: * test/manual/indent/jsx.jsx: Move from here... * test/lisp/progmodes/js-resources/js-chain.js: * test/lisp/progmodes/js-resources/js-indent-align-list-continuation-nil.js: * test/lisp/progmodes/js-resources/js-indent-init-dynamic.js: * test/lisp/progmodes/js-resources/js-indent-init-t.js: * test/lisp/progmodes/js-resources/js.js: * test/lisp/progmodes/js-resources/jsx-align-gt-with-lt.jsx: * test/lisp/progmodes/js-resources/jsx-comment-string.jsx: * test/lisp/progmodes/js-resources/jsx-indent-level.jsx: * test/lisp/progmodes/js-resources/jsx-quote.jsx: * test/lisp/progmodes/js-resources/jsx-self-closing.jsx: * test/lisp/progmodes/js-resources/jsx-unclosed-1.jsx: * test/lisp/progmodes/js-resources/jsx-unclosed-2.jsx: * test/lisp/progmodes/js-resources/jsx.jsx: ...to here.
65 lines
1.3 KiB
JavaScript
65 lines
1.3 KiB
JavaScript
// 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>
|