Tone.js/Tone/effect/StereoWidener.test.ts

42 lines
1.2 KiB
TypeScript
Raw Normal View History

import { StereoWidener } from "./StereoWidener.js";
import { BasicTests } from "../../test/helper/Basic.js";
import { EffectTests } from "../../test/helper/EffectTests.js";
2019-11-04 02:43:53 +00:00
import { expect } from "chai";
import { CompareToFile } from "../../test/helper/CompareToFile.js";
import { ToneAudioBuffer } from "../core/context/ToneAudioBuffer.js";
import { Player } from "../source/buffer/Player.js";
2019-11-04 02:43:53 +00:00
describe("StereoWidener", () => {
BasicTests(StereoWidener);
EffectTests(StereoWidener, 0);
2019-11-04 03:19:33 +00:00
it("matches a file basic", async () => {
const buffer = await ToneAudioBuffer.fromUrl("./test/audio/FWDL.wav");
return CompareToFile(
() => {
const phaser = new StereoWidener(0.1).toDestination();
const player = new Player(buffer).connect(phaser).start();
},
"stereoWidener.wav",
0.3
);
2019-11-04 03:19:33 +00:00
});
2019-11-04 02:43:53 +00:00
context("API", () => {
it("can pass in options in the constructor", () => {
const widener = new StereoWidener(0.2);
expect(widener.width.value).to.be.closeTo(0.2, 0.001);
widener.dispose();
});
it("can get/set the options", () => {
const widener = new StereoWidener();
widener.set({
width: 0.4,
});
expect(widener.width.value).to.be.closeTo(0.4, 0.001);
widener.dispose();
});
});
});