mirror of
https://github.com/Tonejs/Tone.js
synced 2024-12-29 13:03:06 +00:00
45 lines
1.1 KiB
TypeScript
45 lines
1.1 KiB
TypeScript
import { expect } from "chai";
|
|
import { Offline } from "test/helper/Offline";
|
|
import { Transport } from "./Transport";
|
|
import { TransportEvent } from "./TransportEvent";
|
|
|
|
describe("TransportEvent", () => {
|
|
|
|
it("can be created and disposed", () => {
|
|
return Offline((context) => {
|
|
const transport = new Transport({ context });
|
|
const event = new TransportEvent(transport, {
|
|
time: 0,
|
|
});
|
|
event.dispose();
|
|
});
|
|
});
|
|
|
|
it("has a unique id", () => {
|
|
return Offline((context) => {
|
|
const transport = new Transport({ context });
|
|
const event = new TransportEvent(transport, {
|
|
time: 0,
|
|
});
|
|
expect(event.id).to.be.a("number");
|
|
event.dispose();
|
|
});
|
|
});
|
|
|
|
it("can invoke the callback", () => {
|
|
let wasInvoked = false;
|
|
return Offline((context) => {
|
|
const transport = new Transport({ context });
|
|
const event = new TransportEvent(transport, {
|
|
callback: (time) => {
|
|
expect(time).to.equal(100);
|
|
wasInvoked = true;
|
|
},
|
|
time: 0,
|
|
});
|
|
event.invoke(100);
|
|
}).then(() => {
|
|
expect(wasInvoked).to.equal(true);
|
|
});
|
|
});
|
|
});
|