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 f634db7d7750c47089f34b20d8028339ac706848..f9bd9d7badf7f78380db3038d5c0bcad377da06b 100644 |
--- a/third_party/WebKit/LayoutTests/fast/files/file-constructor.html |
+++ b/third_party/WebKit/LayoutTests/fast/files/file-constructor.html |
@@ -120,6 +120,19 @@ shouldBe("new File([new Float64Array(100), new Int32Array(100), new Uint8Array(1 |
shouldBe("new File([new Blob([new Int32Array(100)]), new Uint8Array(100), new Float32Array(100), new DataView(new ArrayBuffer(100))], 'world.html').size", "1000"); |
shouldBe("new File([new Blob([new Int32Array(100)]), new File([new Uint16Array(100)], 'world.txt'), new Uint8Array(100), new Float32Array(100), new DataView(new ArrayBuffer(100))], 'world.html').size", "1200"); |
+// Test SharedArrayBuffer view parameters. |
+if (window.internals && internals.runtimeFlags.sharedArrayBufferEnabled && window.SharedArrayBuffer) { |
+ shouldThrow("new File([new Uint8Array(new SharedArrayBuffer(100))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+ shouldThrow("new File([new Uint8ClampedArray(new SharedArrayBuffer(100))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+ shouldThrow("new File([new Uint16Array(new SharedArrayBuffer(100))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+ shouldThrow("new File([new Uint32Array(new SharedArrayBuffer(100))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+ shouldThrow("new File([new Int8Array(new SharedArrayBuffer(100))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+ shouldThrow("new File([new Int16Array(new SharedArrayBuffer(100))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+ shouldThrow("new File([new Int32Array(new SharedArrayBuffer(100))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+ shouldThrow("new File([new Float32Array(new SharedArrayBuffer(100))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+ shouldThrow("new File([new Float64Array(new SharedArrayBuffer(104))], 'world.html')", '"TypeError: Failed to construct \'File\': sequence parameter 1 contains a view of a SharedArrayBuffer."'); |
+} |
+ |
// Test ArrayBuffer parameters. |
shouldBe("new File([(new DataView(new ArrayBuffer(100))).buffer], 'world.html').size", "100"); |
shouldBe("new File([(new Uint8Array(100)).buffer], 'world.html').size", "100"); |