more tests

This commit is contained in:
Nolan Lawson 2014-10-24 22:17:23 -04:00
parent fdf181c6ba
commit 4a2c56c649
3 changed files with 23 additions and 3 deletions

View File

@ -86,10 +86,12 @@ function loadImage(src) {
} }
function dataURLToBlob(dataURL) { function dataURLToBlob(dataURL) {
return Promise.resolve().then(function () {
var type = dataURL.match(/data:([^;]+)/)[1]; var type = dataURL.match(/data:([^;]+)/)[1];
var base64 = dataURL.replace(/^[^,]+,/, ''); var base64 = dataURL.replace(/^[^,]+,/, '');
return createBlob([binaryStringToArrayBuffer(atob(base64))], {type: type}); return createBlob([binaryStringToArrayBuffer(atob(base64))], {type: type});
});
} }
function createObjectURL(blob) { function createObjectURL(blob) {

View File

@ -14,6 +14,8 @@
<body> <body>
<div id="mocha"></div> <div id="mocha"></div>
<img src="kirby.gif" id="kirby"/> <img src="kirby.gif" id="kirby"/>
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGP6zwAAAgcBApocMXEAAAAASUVORK5CYII="
id="transparent"/>
<script type="text/javascript" src="./webrunner.js"></script> <script type="text/javascript" src="./webrunner.js"></script>
</body> </body>
</html> </html>

View File

@ -86,5 +86,21 @@ function tests() {
}); });
}); });
it('convert data url', function () {
var dataURL = 'data:image/png;base64,' + transparent1x1Png;
return blobUtil.dataURLToBlob(dataURL).then(function (blob) {
return blobUtil.blobToBase64String(blob);
}).then(function (string) {
string.should.equal(transparent1x1Png);
});
});
it('convert to dataURL', function () {
var img = document.getElementById('transparent');
return blobUtil.imgSrcToDataURL(img.src).then(function (url) {
url.should.match(/^data:image\/png;base64/);
});
});
}); });
} }