// Copyright (C) 2021 Chengzhong Wu. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description : InstallErrorCause on abrupt completions
info : |
Error ( message [ , options ] )
. . .
4 . Perform ? InstallErrorCause ( O , options ) .
. . .
20 . 5 . 8 . 1 InstallErrorCause ( O , options )
1 . If Type ( options ) is Object and ? HasProperty ( options , " cause " ) is true , then
a . Let cause be ? Get ( options , " cause " ) .
b . Perform ! CreateNonEnumerableDataPropertyOrThrow ( O , " cause " , cause ) .
. . .
esid : sec - error - message
features : [ error - cause ]
---*/
var message = "my-message" ;
var options;
//////////////////////////////////////////////////////////////////////////////
// CHECK#0
options = new Proxy({}, {
has(target, prop) {
if (prop === "cause" ) {
throw new Test262Error("HasProperty" );
}
return prop in target;
},
});
assert .throws (Test262Error, function () {
new Error(message, options);
}, "HasProperty" );
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
// CHECK#1
options = {
get cause() {
throw new Test262Error("Get Cause" );
},
};
assert .throws (Test262Error, function () {
new Error(message, options);
}, "Get Cause" );
//////////////////////////////////////////////////////////////////////////////
reportCompare(0 , 0 );
Messung V0.5 in Prozent C=84 H=77 G=80
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet am 2026-09-30)
¤
*© Formatika GbR, Deutschland