mirror of
https://github.com/Tonejs/Tone.js
synced 2024-12-27 20:13:07 +00:00
ed71d8141b
no longer using AMD (require.js) style imports, and beginning to move to es6 "import/export" statements everywhere.
56 lines
1.2 KiB
JavaScript
56 lines
1.2 KiB
JavaScript
import Tone from "Tone/core/Tone";
|
|
import Offline from "Tone/core/Offline";
|
|
import BufferTest from "helper/BufferTest";
|
|
import Master from "Tone/core/Master";
|
|
|
|
function getIframeError(url){
|
|
return new Promise(function(success, error){
|
|
var iframe = document.createElement("iframe");
|
|
iframe.onload = function(){
|
|
iframe.remove();
|
|
success();
|
|
};
|
|
iframe.width = 1;
|
|
iframe.height = 1;
|
|
iframe.src = url;
|
|
document.body.appendChild(iframe);
|
|
//capture the error
|
|
iframe.contentWindow.onerror=function(e){
|
|
error(e);
|
|
};
|
|
});
|
|
}
|
|
|
|
function createTest(url){
|
|
|
|
it(url, function(){
|
|
url = baseUrl + url + ".html";
|
|
return testUrl(url).then(getIframeError);
|
|
});
|
|
}
|
|
|
|
function testUrl(url){
|
|
return new Promise(function(success, fail){
|
|
var httpRequest = new XMLHttpRequest();
|
|
httpRequest.onreadystatechange = function(){
|
|
if (httpRequest.readyState === 4){
|
|
if (httpRequest.status === 200){
|
|
success(url);
|
|
} else {
|
|
fail("404: "+url);
|
|
}
|
|
}
|
|
};
|
|
httpRequest.open("GET", url);
|
|
httpRequest.send();
|
|
});
|
|
}
|
|
|
|
/**
|
|
* @param {String} url
|
|
* @return {Promise}
|
|
*/
|
|
export default function(url){
|
|
return testUrl(url).then(getIframeError);
|
|
}
|
|
|