TypeScript/tests/cases/compiler/inferenceLimit.ts

41 lines
887 B
TypeScript
Raw Normal View History

2016-03-21 23:15:41 +01:00
// @target: es6
// @module: commonjs
// @filename: file1.ts
"use strict";
import * as MyModule from "./mymodule";
export class BrokenClass {
constructor() {}
public brokenMethod(field: string, value: string) {
return new Promise<Array<MyModule.MyModel>>((resolve, reject) => {
let result: Array<MyModule.MyModel> = [];
let populateItems = (order) => {
return new Promise((resolve, reject) => {
this.doStuff(order.id)
.then((items) => {
order.items = items;
resolve(order);
});
});
};
return Promise.all(result.map(populateItems))
.then((orders: Array<MyModule.MyModel>) => {
resolve(orders);
});
});
}
public async doStuff(id: number) {
return;
}
}
// @filename: mymodule.ts
export interface MyModel {
id: number;
}