• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1namespace ts {
2    describe("unittests:: config:: initTSConfig", () => {
3        function initTSConfigCorrectly(name: string, commandLinesArgs: string[]) {
4            describe(name, () => {
5                const commandLine = parseCommandLine(commandLinesArgs);
6                const initResult = generateTSConfig(commandLine.options, commandLine.fileNames, "\n");
7                const outputFileName = `config/initTSConfig/${name.replace(/[^a-z0-9\-. ]/ig, "")}/tsconfig.json`;
8
9                it(`Correct output for ${outputFileName}`, () => {
10                    Harness.Baseline.runBaseline(outputFileName, initResult, { PrintDiff: true });
11                });
12            });
13        }
14
15        initTSConfigCorrectly("Default initialized TSConfig", ["--init"]);
16
17        initTSConfigCorrectly("Initialized TSConfig with files options", ["--init", "file0.st", "file1.ts", "file2.ts"]);
18
19        initTSConfigCorrectly("Initialized TSConfig with boolean value compiler options", ["--init", "--noUnusedLocals"]);
20
21        initTSConfigCorrectly("Initialized TSConfig with enum value compiler options", ["--init", "--target", "es5", "--jsx", "react"]);
22
23        initTSConfigCorrectly("Initialized TSConfig with list compiler options", ["--init", "--types", "jquery,mocha"]);
24
25        initTSConfigCorrectly("Initialized TSConfig with list compiler options with enum value", ["--init", "--lib", "es5,es2015.core"]);
26
27        initTSConfigCorrectly("Initialized TSConfig with incorrect compiler option", ["--init", "--someNonExistOption"]);
28
29        initTSConfigCorrectly("Initialized TSConfig with incorrect compiler option value", ["--init", "--lib", "nonExistLib,es5,es2015.promise"]);
30
31        initTSConfigCorrectly("Initialized TSConfig with advanced options", ["--init", "--declaration", "--declarationDir", "lib", "--skipLibCheck", "--noErrorTruncation"]);
32
33        initTSConfigCorrectly("Initialized TSConfig with --help", ["--init", "--help"]);
34
35        initTSConfigCorrectly("Initialized TSConfig with --watch", ["--init", "--watch"]);
36    });
37}
38