Bug 661876: Fix tests to avoid using obsolete nsIDOMFile properties/methods.

This commit is contained in:
Kyle Huey 2011-06-05 11:54:14 -07:00
parent e9db06af5d
commit 0bfabf934f
3 changed files with 17 additions and 60 deletions

View File

@ -158,7 +158,6 @@ _TEST_FILES1 = test_bug5141.html \
test_bug413974.html \
test_bug415860.html \
test_bug414190.html \
test_bug414796.html \
test_bug527896.html \
test_bug416317-1.html \
test_bug416317-2.html \

View File

@ -1,55 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=414796
-->
<title>Test for Bug 414796</title>
<script type="text/javascript" src="/MochiKit/packed.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=414796">Mozilla Bug 414796</a>
<p id="display">
<input id="fileList" type="file"></input>
</p>
<div id="content" style="display: none">
</div>
<pre id="test">
<script class="testbody" type="text/javascript">
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// Write a test file > 8192 characters
var testData = "asdfblahqwer";
for (var i = 0; i < 10; i++) {
testData = testData + testData;
}
var dirSvc = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties);
var testFile = dirSvc.get("ProfD", Components.interfaces.nsIFile);
testFile.append("testfile");
var outStream = Components.classes["@mozilla.org/network/file-output-stream;1"].createInstance(Components.interfaces.nsIFileOutputStream);
outStream.init(testFile, 0x02 | 0x08 | 0x20, // write, create, truncate
0666, 0);
outStream.write(testData, testData.length);
outStream.close();
var fileList = document.getElementById('fileList');
fileList.value = testFile.path;
var domFileData = fileList.files[0].getAsText("iso-8859-1");
ok(domFileData.length == testData.length);
ok(domFileData == testData);
testFile.remove(false);
</script>
</pre>
</body> </html>

View File

@ -6,6 +6,21 @@
<body>
<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
<script>
function compareAsync(file, canvas, type)
{
SimpleTest.waitForExplicitFinish();
var reader = new FileReader();
reader.onload =
function(e) {
is(e.target.result, canvas.toDataURL(type),
"<canvas>.mozGetAsFile().getAsDataURL() should equal <canvas>.toDataURL()");
SimpleTest.finish();
};
reader.readAsDataURL(file);
}
SimpleTest.waitForExplicitFinish();
MochiKit.DOM.addLoadEvent(function () {
@ -16,15 +31,13 @@ ctx.drawImage(document.getElementById('yellow75.png'), 0, 0);
var pngfile = canvas.mozGetAsFile("foo.png");
is(pngfile.type, "image/png", "Default type for mozGetAsFile should be PNG");
is(pngfile.getAsDataURL(), canvas.toDataURL(),
"<canvas>.mozGetAsFile().getAsDataURL() should equal <canvas>.toDataURL()");
compareAsync(pngfile, canvas, "image/png");
is(pngfile.name, "foo.png", "File name should be what we passed in");
var jpegfile = canvas.mozGetAsFile("bar.jpg", "image/jpeg");
is(jpegfile.type, "image/jpeg",
"When a valid type is specified that should be returned");
is(jpegfile.getAsDataURL(), canvas.toDataURL("image/jpeg"),
"<canvas>.mozGetAsFile().getAsDataURL() should equal <canvas>.toDataURL()");
compareAsync(jpegfile, canvas, "image/jpeg");
is(jpegfile.name, "bar.jpg", "File name should be what we passed in");
SimpleTest.finish();