Files
rk35xx-android14/external/pdfium/testing/resources/javascript/constructor.js
T
hmz007 36ed224bac Rockchip Anroid14_SDK 20240628-rkr5 (2556df1a)
Signed-off-by: hmz007 <hmz007@gmail.com>
Change-Id: Ib87fdbe7a0be7dc961af3500fe9ea4589a127f9f
2024-10-29 18:12:02 +08:00

50 lines
1.3 KiB
JavaScript

// Copyright 2020 The PDFium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
function testLegalConstructor(name, allowed) {
const constructorString = name + ".constructor";
var constructor;
try {
constructor = eval(constructorString);
} catch (e) {
app.alert("FAIL: No such " + constructorString);
return;
}
try {
constructor();
app.alert("FAIL: " + constructorString + "(): returned");
} catch (e) {
app.alert("PASS: " + constructorString + "(): " + e);
}
try {
var thing = new constructor;
app.alert("PASS: new " + constructorString + ": " + thing);
} catch (e) {
app.alert("FAIL: new " + constructorString + ": " + e);
}
}
function testIllegalConstructor(name, allowed) {
const constructorString = name + ".constructor";
var constructor;
try {
constructor = eval(constructorString);
} catch (e) {
app.alert("FAIL: No such " + constructorString);
return;
}
try {
constructor();
app.alert("FAIL: " + constructorString + "(): returned");
} catch (e) {
app.alert("PASS: " + constructorString + "(): " + e);
}
try {
new constructor;
app.alert("FAIL: new " + constructorString + ": returned");
} catch (e) {
app.alert("PASS: new " + constructorString + ": " + e);
}
}