| Index: test/mjsunit/harmony/dataview-accessors.js
|
| diff --git a/test/mjsunit/harmony/dataview-accessors.js b/test/mjsunit/harmony/dataview-accessors.js
|
| index c57841c4941a69f4fb85595c61101712f7243f35..7b03da7089721235ce96a85d16afe7b6428513bf 100644
|
| --- a/test/mjsunit/harmony/dataview-accessors.js
|
| +++ b/test/mjsunit/harmony/dataview-accessors.js
|
| @@ -389,6 +389,11 @@ function TestGeneralAccessors() {
|
| f.call(a, 0, 0); // should not throw
|
| assertThrows(function() { f.call({}, 0, 0); }, TypeError);
|
| assertThrows(function() { f.call(a); }, TypeError);
|
| + if (name.indexOf("set") == 0) {
|
| + assertThrows(function() { f.call(a, 1); }, TypeError);
|
| + } else {
|
| + f.call(a, 1); // should not throw
|
| + }
|
| }
|
| CheckAccessor("getUint8");
|
| CheckAccessor("setUint8");
|
| @@ -409,3 +414,36 @@ function TestGeneralAccessors() {
|
| }
|
|
|
| TestGeneralAccessors();
|
| +
|
| +function TestInsufficientArguments() {
|
| + var a = new DataView(new ArrayBuffer(256));
|
| +
|
| + assertThrows(function() { a.getUint8(); }, TypeError);
|
| + assertThrows(function() { a.getInt8(); }, TypeError);
|
| + assertThrows(function() { a.getUint16(); }, TypeError);
|
| + assertThrows(function() { a.getInt16(); }, TypeError);
|
| + assertThrows(function() { a.getUint32(); }, TypeError);
|
| + assertThrows(function() { a.getInt32(); }, TypeError);
|
| + assertThrows(function() { a.getFloat32(); }, TypeError);
|
| + assertThrows(function() { a.getFloat64(); }, TypeError);
|
| +
|
| + assertThrows(function() { a.setUint8(); }, TypeError);
|
| + assertThrows(function() { a.setInt8(); }, TypeError);
|
| + assertThrows(function() { a.setUint16(); }, TypeError);
|
| + assertThrows(function() { a.setInt16(); }, TypeError);
|
| + assertThrows(function() { a.setUint32(); }, TypeError);
|
| + assertThrows(function() { a.setInt32(); }, TypeError);
|
| + assertThrows(function() { a.setFloat32(); }, TypeError);
|
| + assertThrows(function() { a.setFloat64(); }, TypeError);
|
| +
|
| + assertThrows(function() { a.setUint8(1) }, TypeError);
|
| + assertThrows(function() { a.setInt8(1) }, TypeError);
|
| + assertThrows(function() { a.setUint16(1) }, TypeError);
|
| + assertThrows(function() { a.setInt16(1) }, TypeError);
|
| + assertThrows(function() { a.setUint32(1) }, TypeError);
|
| + assertThrows(function() { a.setInt32(1) }, TypeError);
|
| + assertThrows(function() { a.setFloat32(1) }, TypeError);
|
| + assertThrows(function() { a.setFloat64(1) }, TypeError);
|
| +}
|
| +
|
| +TestInsufficientArguments();
|
|
|