Test reexport of a missing alias

This commit is contained in:
Nathan Shively-Sanders
2017-06-01 09:21:31 -07:00
parent e6bcef7dc5
commit 9bcbeffcc7
3 changed files with 61 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
tests/cases/compiler/second.d.ts(2,27): error TS2304: Cannot find name 'CompletelyMissing'.
tests/cases/compiler/second.d.ts(2,27): error TS2503: Cannot find namespace 'CompletelyMissing'.
==== tests/cases/compiler/second.d.ts (2 errors) ====
// Fixes #15094
export import Component = CompletelyMissing;
~~~~~~~~~~~~~~~~~
!!! error TS2304: Cannot find name 'CompletelyMissing'.
~~~~~~~~~~~~~~~~~
!!! error TS2503: Cannot find namespace 'CompletelyMissing'.
==== tests/cases/compiler/first.d.ts (0 errors) ====
import * as Second from './second';
export = Second;
==== tests/cases/compiler/crash.ts (0 errors) ====
import { Component } from './first';
class C extends Component { }

View File

@@ -0,0 +1,34 @@
//// [tests/cases/compiler/reexportedMissingAlias.ts] ////
//// [second.d.ts]
// Fixes #15094
export import Component = CompletelyMissing;
//// [first.d.ts]
import * as Second from './second';
export = Second;
//// [crash.ts]
import { Component } from './first';
class C extends Component { }
//// [crash.js]
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
exports.__esModule = true;
var first_1 = require("./first");
var C = (function (_super) {
__extends(C, _super);
function C() {
return _super !== null && _super.apply(this, arguments) || this;
}
return C;
}(first_1.Component));

View File

@@ -0,0 +1,9 @@
// Fixes #15094
// @Filename: second.d.ts
export import Component = CompletelyMissing;
// @Filename: first.d.ts
import * as Second from './second';
export = Second;
// @Filename: crash.ts
import { Component } from './first';
class C extends Component { }