| <!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> |