summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/shape-detection/detection-options.https.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/shape-detection/detection-options.https.html')
-rw-r--r--testing/web-platform/tests/shape-detection/detection-options.https.html54
1 files changed, 54 insertions, 0 deletions
diff --git a/testing/web-platform/tests/shape-detection/detection-options.https.html b/testing/web-platform/tests/shape-detection/detection-options.https.html
new file mode 100644
index 0000000000..4b79da2a6e
--- /dev/null
+++ b/testing/web-platform/tests/shape-detection/detection-options.https.html
@@ -0,0 +1,54 @@
+<!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(),
+ [BarcodeFormat.CODE_128, BarcodeFormat.QR_CODE],
+ "formats");
+
+ const invalidFormats = [
+ [],
+ ["unknown"],
+ ["foo", "bar"]
+ ];
+
+ invalidFormats.forEach(invalidFormat => {
+ assert_throws_js(TypeError, () => new BarcodeDetector({formats: invalidFormat}));
+ });
+
+}, "Test that BarcodeDetectorOptions are correctly propagated");
+
+</script>