clang-format: [js] Support ES6 module exports.
Patch by Martin Probst, thank you!
llvm-svn: 229865
diff --git a/clang/unittests/Format/FormatTestJS.cpp b/clang/unittests/Format/FormatTestJS.cpp
index ab4af80..7c61d63 100644
--- a/clang/unittests/Format/FormatTestJS.cpp
+++ b/clang/unittests/Format/FormatTestJS.cpp
@@ -546,9 +546,30 @@
verifyFormat("import {X as myLocalX, Y as myLocalY} from 'some/module.js';");
verifyFormat("import * as lib from 'some/module.js';");
verifyFormat("var x = {\n import: 1\n};\nx.import = 2;");
- verifyFormat("export function fn() {\n return 'fn';\n}");
+
+ verifyFormat("export function fn() {\n"
+ " return 'fn';\n"
+ "}");
verifyFormat("export const x = 12;");
verifyFormat("export default class X {}");
+ verifyFormat("export {X, Y} from 'some/module.js';");
+ verifyFormat("export {\n"
+ " X,\n"
+ " Y,\n"
+ "} from 'some/module.js';");
+ verifyFormat("export class C {\n"
+ " x: number;\n"
+ " y: string;\n"
+ "}");
+ verifyFormat("export class X { y: number; }");
+ verifyFormat("export default class X { y: number }");
+ verifyFormat("export default function() {\n return 1;\n}");
+ verifyFormat("export var x = 12;");
+ verifyFormat("export var x: number = 12;");
+ verifyFormat("export const y = {\n"
+ " a: 1,\n"
+ " b: 2\n"
+ "};");
}
} // end namespace tooling