gecko-dev/dom/promise/tests/file_promise_xrays.html
Boris Zbarsky 7c7786c7ac Bug 1170760 part 7. Add subclassing support to Promise::Race. r=baku,efaust
Note that the web platform tests don't actually have quite the behavior they're
expected to per the spec yet.  They will get adjusted later on as we add
subclassing support to Promise.resolve and Promise.prototype.then.
2015-11-25 15:48:09 -05:00

31 lines
956 B
HTML

<!DOCTYPE html>
<html>
<script>
function vendGetter(name) {
return function() { throw "Getting " + String(name) };
}
function vendSetter(name) {
return function() { throw "Setting " + String(name) };
}
var setupThrew = false;
try {
// Neuter everything we can think of on Promise.
for (var obj of [Promise, Promise.prototype]) {
propNames = Object.getOwnPropertyNames(obj);
propNames = propNames.concat(Object.getOwnPropertySymbols(obj));
for (var propName of propNames) {
if (propName == "prototype" && obj == Promise) {
// It's not configurable
continue;
}
Object.defineProperty(obj, propName,
{ get: vendGetter(propName), set: vendSetter(propName) });
}
}
} catch (e) {
// Something went wrong. Save that info so the test can check for it.
setupThrew = e;
}
</script>
</html>