Tone.js/test/source/PWMOscillator.js
2019-02-01 11:49:47 -05:00

50 lines
1.3 KiB
JavaScript

import BasicTests from "helper/Basic";
import PWMOscillator from "Tone/source/PWMOscillator";
import Offline from "helper/Offline";
import SourceTests from "helper/SourceTests";
import OscillatorTests from "helper/OscillatorTests";
import Test from "helper/Test";
import CompareToFile from "helper/CompareToFile";
describe("PWMOscillator", function(){
//run the common tests
BasicTests(PWMOscillator);
SourceTests(PWMOscillator);
OscillatorTests(PWMOscillator);
it("matches a file", function(){
return CompareToFile(function(){
var osc = new PWMOscillator().toMaster();
osc.start(0.1);
}, "pwmOscillator.wav");
});
context("Modulation Frequency", function(){
it("can set the modulation frequency", function(){
var pwm = new PWMOscillator();
pwm.modulationFrequency.value = 0.2;
expect(pwm.modulationFrequency.value).to.be.closeTo(0.2, 0.001);
pwm.dispose();
});
it("can connect a signal to the modulationFrequency", function(){
var pwm = new PWMOscillator();
Test.connect(pwm.modulationFrequency);
pwm.dispose();
});
});
context("Types", function(){
it("reports it's type", function(){
var osc = new PWMOscillator();
expect(osc.type).to.equal("pwm");
expect(osc.baseType).to.equal("pwm");
expect(osc.partials).to.deep.equal([]);
osc.dispose();
});
});
});