awesome-typescript-loader
Version:
Awesome TS loader for webpack
58 lines • 2.97 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator.throw(value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments)).next());
});
};
var utils_1 = require('./utils');
describe('main test', function () {
it('should compile simple file', function () {
return __awaiter(this, void 0, void 0, function* () {
var config = {
entry: utils_1.fixturePath(['basic', 'basic.ts'])
};
var stats = yield utils_1.cleanAndCompile(utils_1.createConfig(config));
utils_1.expect(stats.compilation.errors.length).eq(0);
var result = yield utils_1.readOutputFile();
var expectation = yield utils_1.readFixture(['basic', 'basic.js']);
utils_1.expectSource(result, expectation);
});
});
it('should check typing', function () {
return __awaiter(this, void 0, void 0, function* () {
var config = {
entry: utils_1.fixturePath(['errors', 'with-type-errors.ts'])
};
var stats = yield utils_1.cleanAndCompile(utils_1.createConfig(config));
utils_1.expect(stats.compilation.errors.length).eq(1);
});
});
it('should ignore diagnostics', function () {
return __awaiter(this, void 0, void 0, function* () {
var config = {
entry: utils_1.fixturePath(['errors', 'with-type-errors.ts'])
};
var loaderQuery = { ignoreDiagnostics: [2345] };
var stats = yield utils_1.cleanAndCompile(utils_1.createConfig(config, { loaderQuery: loaderQuery }));
utils_1.expect(stats.compilation.errors.length).eq(0);
});
});
it('should load tsx files and use tsconfig', function () {
return __awaiter(this, void 0, void 0, function* () {
var tsconfig = utils_1.fixturePath(['tsx', 'tsconfig.json']);
var config = {
entry: utils_1.fixturePath(['tsx', 'basic.tsx'])
};
var loaderQuery = { tsconfig: tsconfig, tsconfigContent: null };
var stats = yield utils_1.cleanAndCompile(utils_1.createConfig(config, { loaderQuery: loaderQuery }));
utils_1.expect(stats.compilation.errors.length).eq(1);
var result = yield utils_1.readOutputFile();
var expectation = 'return React.createElement("div", null, "hi there");';
utils_1.expectSource(result, expectation);
});
});
});
//# sourceMappingURL=index.js.map