PlayOscillator(hz: number = 400, durationInSeconds: number = 1){
this._Oscillators[0].frequency.value = hz;
this._Oscillators[0].connect(this._MainGainNode);
this._activeOscillatorIndex = 0;
setTimeout(() => {
console.info("time out called");
this._Oscillators[this._activeOscillatorIndex].disconnect(this._MainGainNode);
this._Oscillators[this._activeOscillatorIndex] = undefined;
}, durationInSeconds * 1000);
}
Ich möchte typeof
this._Oscillators[0]
testen, nachdem setTimeout ausgeführt wurde, aber ich bin nicht in der Lage, es zu tun. Alle Lösungen, die ich gefunden habe, hier empfehlen Funktionen, die nicht verfügbar sind, in Jasmin 2.5Wie testet man eine Funktion, die einen setTimeout in Jasmine 2.5 auslöst?
Ich habe bisher
it('Should switch from one oscillator to another',()=>{
let wap = webAudioApiProvider;
expect(wap._Oscillators[0]).toBeUndefined();
expect(()=>{wap.PlayOscillator(freq,duration)}).not.toThrow();
expect(wap._Oscillators[0]).toBeUndefined();
});
Wo ist Ihr Testcode, den Sie bisher haben? – JLRishe
Ah Entschuldigung, ich dachte, ich hätte es eingefügt. Ich werde meine Frage in 10 Minuten bearbeiten, wenn ich vom Lebensmittelgeschäft zurückkehre. Es ist nur ein Drei-Zeilen-Code mit dem es erwarten, nicht werfen. Und toBe – distante
@JLRishe aktualisiert! – distante