| Index: third_party/WebKit/LayoutTests/fast/files/file-constructor.html
|
| diff --git a/third_party/WebKit/LayoutTests/fast/files/file-constructor.html b/third_party/WebKit/LayoutTests/fast/files/file-constructor.html
|
| index 37dc7e6ba33825dac322c8c26e1a99a45fb8c577..bd6e8a2f546168f250d156396f8e2cc49c87995f 100644
|
| --- a/third_party/WebKit/LayoutTests/fast/files/file-constructor.html
|
| +++ b/third_party/WebKit/LayoutTests/fast/files/file-constructor.html
|
| @@ -26,9 +26,9 @@ shouldBeTrue("(new File([], '')) instanceof window.File");
|
| shouldBeTrue("(new File([], document)) instanceof window.File");
|
|
|
| // Test invalid file parts.
|
| -shouldThrow("new File('hello', 'world.html')", '"TypeError: Failed to construct \'File\': The 1st argument is neither an array, nor does it have indexed properties."');
|
| -shouldThrow("new File(0, 'world.html')", '"TypeError: Failed to construct \'File\': The 1st argument is neither an array, nor does it have indexed properties."');
|
| -shouldThrow("new File(null, 'world.html')", '"TypeError: Failed to construct \'File\': The 1st argument is neither an array, nor does it have indexed properties."');
|
| +shouldThrow("new File('hello', 'world.html')", '"TypeError: Failed to construct \'File\': The provided value cannot be converted to a sequence."');
|
| +shouldThrow("new File(0, 'world.html')", '"TypeError: Failed to construct \'File\': The provided value cannot be converted to a sequence."');
|
| +shouldThrow("new File(null, 'world.html')", '"TypeError: Failed to construct \'File\': The provided value cannot be converted to a sequence."');
|
|
|
| // Test valid file parts.
|
| shouldBeTrue("(new File([], 'world.html')) instanceof window.File");
|
| @@ -151,8 +151,15 @@ shouldBe("new File([new Blob([(new Int32Array(100)).buffer]), new File([new Uint
|
| shouldBe("new Blob([new Blob([new Int32Array(100)]), new File([new Uint16Array(100)], 'world.txt'), new Uint8Array(100), new Float32Array(100), new DataView(new ArrayBuffer(100))]).size", "1200");
|
| shouldBe("new Blob([new Blob([(new Int32Array(100)).buffer]), new File([new Uint16Array(100).buffer], 'world.txt'), (new Uint8Array(100)).buffer, (new Float32Array(100)).buffer, (new DataView(new ArrayBuffer(100))).buffer]).size", "1200");
|
|
|
| -// Test passing blob parts in objects with indexed properties.
|
| -// (This depends on the bindings code handling of sequence<T>)
|
| -shouldBe("new File({length: 0}, 'world.txt').size", "0");
|
| -shouldBe("new File({length: 1, 0: 'string'}, 'world.txt').size", "6");
|
| +// Custom iterators, converted via the bindings code to sequence<T>.
|
| +function createIterable(iterations) {
|
| + return {
|
| + [Symbol.iterator]() {
|
| + var i = 0;
|
| + return {next: () => iterations[i++]};
|
| + },
|
| + };
|
| +}
|
| +shouldBe("new File(createIterable([{done:true}]), 'world.txt').size", "0");
|
| +shouldBe("new File(createIterable([{done:false, value:'string'},{done:true}]), 'world.txt').size", "6");
|
| </script>
|
|
|