message: only testing online when supported
diff: define(["helper/Basic", "Tone/source/OscillatorNode", "helper/Offline",
  - "Tone/type/Frequency", "Test", "helper/Meter"], function(BasicTests, OscillatorNode, Offline, Frequency, Test, Meter){
  + "Tone/type/Frequency", "Test", "helper/Meter", "helper/Supports"],
  +function(BasicTests, OscillatorNode, Offline, Frequency, Test, Meter, Supports){
  describe("OscillatorNode", function(){
  @@ -62,6 +63,8 @@ define(["helper/Basic", "Tone/source/OscillatorNode", "helper/Offline",
  context("onended", function(){
  + if (Supports.ONLINE_TESTING){
  +
  it("invokes the onended callback in the online context", function(done){
  var osc = new OscillatorNode();
  osc.start();
  @@ -74,19 +77,6 @@ define(["helper/Basic", "Tone/source/OscillatorNode", "helper/Offline",
  };
  });
  - it("invokes the onended callback in the offline context", function(done){
  - Offline(function(){
  - var osc = new OscillatorNode();
  - osc.start(0);
  - osc.stop(0.2);
  - osc.onended = function(){
  - expect(osc.now() - 0.2).to.be.closeTo(0, 0.05);
  - osc.dispose();
  - done();
  - };
  - }, 0.3);
  - });
  -
  it("invokes the onended callback only once in the online context", function(done){
  var osc = new OscillatorNode();
  osc.start("+0");
  @@ -100,6 +90,20 @@ define(["helper/Basic", "Tone/source/OscillatorNode", "helper/Offline",
  done();
  };
  });
  + }
  +
  + it("invokes the onended callback in the offline context", function(done){
  + Offline(function(){
  + var osc = new OscillatorNode();
  + osc.start(0);
  + osc.stop(0.2);
  + osc.onended = function(){
  + expect(osc.now() - 0.2).to.be.closeTo(0, 0.05);
  + osc.dispose();
  + done();
  + };
  + }, 0.3);
  + });
  it("invokes the onended callback only once in offline context", function(done){
  Offline(function(){
  