Ich habe etwas älteren Code Ich möchte Unit-Tests starten. Es ist eine Klasse wie folgt:Erhalten Sie eine Instanz der TypeScript-Klasse?
export class Controller {
private something: any;
constructor() { this.something = true; }
public getSomething(): any { return this.something; }
}
Der Versuch, Unit-Test mit Mokka wie folgt aus:
import Controller from '../../src/Controller';
describe('Controller',() => {
let subject: any;
beforeEach(() => {
subject = new Controller(); // compiler complains here
});
describe('getOptions()',() => {
it('should get something',() => {
let result: any = subject.getOptions();
if (typeof result !== 'object') {
throw new Error('Expected object but got ' + result);
}
});
});
});
Compiler beklagt:
[ts] Kann nicht verwenden 'neuen' mit ein Ausdruck, dessen Typ einen Aufruf oder Konstruktsignatur fehlt.
Wie bekomme ich eine Instanz der Klasse Controller
, um Tests durchzuführen?
Ausgezeichnet, erste Option funktioniert! Wo kann ich den Unterschied zwischen einem Standard- und einem nicht standardmäßigen Export nachlesen? – montrealist
@montrealist Ich habe einen Link zu der Antwort für zukünftige Referenz hinzugefügt. :) – toskv