| The `shapedetection-helpers.js` tests require implementations of | |
| the `FaceDetectionTest`, `BarcodeDetectionTest` and `TextDetectionTest` | |
| interfaces, which should emulate platform shape detection backends. | |
| The `FaceDetectionTest` interface is defined as: | |
| ``` | |
| class FaceDetectionTest { | |
| async initialize(); // Sets up the testing environment. | |
| async reset(); // Frees the resources. | |
| MockFaceDetectionProvider(); //Returns `MockFaceDetectionProvider` interface. | |
| }; | |
| class MockFaceDetectionProvider { | |
| getFrameData(); //Gets frame data of detection result. | |
| getMaxDetectedFaces(); //Gets value of `maxDetectedFaces` in `FaceDetector` constructor | |
| getFastMode(); //Gets value of `fastMode` in `FaceDetector` constructor | |
| }; | |
| ``` | |
| The Chromium implementation of the `FaceDetectionTest` interface is located in | |
| [mock-facedetection.js](../resources/chromium/mock-facedetection.js). | |
| The `BarcodeDetectionTest` interface is defined as: | |
| ``` | |
| class BarcodeDetectionTest { | |
| async initialize(); // Sets up the testing environment. | |
| async reset(); // Frees the resources. | |
| MockBarcodeDetectionProvider(); //Returns `MockBarcodeDetectionProvider` interface. | |
| }; | |
| class MockBarcodeDetectionProvider { | |
| async enumerateSupportedFormats(); //Enumerates supported formats | |
| getFrameData(); //Gets frame data of detection result. | |
| getFormats(); //Gets value of `formats` in `BarcodeDetector` constructor | |
| simulateNoImplementation(); // simulate a 'no implementation available' case | |
| }; | |
| ``` | |
| The Chromium implementation of the `BarcodeDetectionTest` interface is located in | |
| [mock-barcodedetection.js](../resources/chromium/mock-barcodedetection.js). | |
| The `TextDetectionTest` interface is defined as: | |
| ``` | |
| class TextDetectionTest { | |
| async initialize(); // Sets up the testing environment. | |
| async reset(); // Frees the resources. | |
| MockTextDetection(); //Returns `MockTextDetection` interface. | |
| }; | |
| class MockTextDetection { | |
| getFrameData(); //Gets frame data of detection result. | |
| }; | |
| ``` | |
| The Chromium implementation of the `TextDetectionTest` interface is located in | |
| [mock-textdetection.js](../resources/chromium/mock-textdetection.js). | |
| Other browser vendors should provide their own implementations of | |
| the `FaceDetectionTest`, `BarcodeDetectionTest` and `TextDetectionTest` | |
| interfaces. |