mirror of
https://github.com/servo/servo.git
synced 2025-06-29 03:23:41 +01:00
66 lines
2.4 KiB
HTML
66 lines
2.4 KiB
HTML
<!DOCTYPE html>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="resources/shapedetection-helpers.js"></script>
|
|
<body>
|
|
<img id="img" src="/images/green-16x16.png"/>
|
|
</body>
|
|
<script>
|
|
|
|
detection_test("FaceDetectionTest", async (t, detectionTest) => {
|
|
const img = document.getElementById("img");
|
|
const mock = detectionTest.MockFaceDetectionProvider();
|
|
|
|
const detectorWithDefault = new FaceDetector();
|
|
let faceDetectionResult = await detectorWithDefault.detect(img);
|
|
assert_equals(mock.getMaxDetectedFaces(), 10, "default maxDetectedFaces");
|
|
assert_equals(mock.getFastMode(), false, "default maxDetectedFaces");
|
|
|
|
const detectorWithOptions =
|
|
new FaceDetector({maxDetectedFaces: 7, fastMode: true});
|
|
faceDetectionResult = await detectorWithOptions.detect(img);
|
|
assert_equals(mock.getMaxDetectedFaces(), 7, "maxDetectedFaces");
|
|
assert_equals(mock.getFastMode(), true, "maxDetectedFaces");
|
|
}, "Test that FaceDetectionOptions are correctly propagated");
|
|
|
|
detection_test("BarcodeDetectionTest", async (t, detectionTest) => {
|
|
const img = document.getElementById("img");
|
|
const mock = detectionTest.MockBarcodeDetectionProvider();
|
|
|
|
const detectorWithNoOptions = new BarcodeDetector();
|
|
let barcodeDetectionResult = await detectorWithNoOptions.detect(img);
|
|
assert_array_equals(mock.getFormats(), [], "formats");
|
|
|
|
const detectorWithOptions = new BarcodeDetector({
|
|
formats: ["code_128", "qr_code"]});
|
|
barcodeDetectionResult = await detectorWithOptions.detect(img);
|
|
assert_array_equals(
|
|
mock.getFormats(),
|
|
[shapeDetection.mojom.BarcodeFormat.CODE_128,
|
|
shapeDetection.mojom.BarcodeFormat.QR_CODE],
|
|
"formats");
|
|
|
|
try {
|
|
new BarcodeDetector({formats: []});
|
|
assert_unreached("providing hint option that is empty should fail");
|
|
} catch (error) {
|
|
assert_equals(error.name, "TypeError");
|
|
}
|
|
|
|
try {
|
|
new BarcodeDetector({formats: ["unknown"]});
|
|
assert_unreached("providing \"unknown\" as a hint option should fail");
|
|
} catch (error) {
|
|
assert_equals(error.name, "TypeError");
|
|
}
|
|
|
|
try {
|
|
new BarcodeDetector({formats: ["foo", "bar"]});
|
|
assert_unreached(
|
|
"providing hint option with unrecognized formats should fail");
|
|
} catch (error) {
|
|
assert_equals(error.name, "TypeError");
|
|
}
|
|
}, "Test that BarcodeDetectorOptions are correctly propagated");
|
|
|
|
</script>
|