| <!DOCTYPE html> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <script> | |
| function detachBuffer(buffer) { | |
| window.postMessage('', '*', [buffer]); | |
| } | |
| promise_test(async () => { | |
| let data = new ImageData(1024, 1024); | |
| detachBuffer(data.data.buffer); | |
| let detector = new FaceDetector(); | |
| try { | |
| await detector.detect(data); | |
| assert_unreached(); | |
| } catch (e) { | |
| assert_equals(e.code, DOMException.INVALID_STATE_ERR); | |
| } | |
| }, 'FaceDetector.detect() rejects on a detached buffer'); | |
| promise_test(async () => { | |
| let data = new ImageData(1024, 1024); | |
| detachBuffer(data.data.buffer); | |
| let detector = new BarcodeDetector(); | |
| try { | |
| await detector.detect(data); | |
| assert_unreached(); | |
| } catch (e) { | |
| assert_equals(e.code, DOMException.INVALID_STATE_ERR); | |
| } | |
| }, 'BarcodeDetector.detect() rejects on a detached buffer'); | |
| promise_test(async () => { | |
| let data = new ImageData(1024, 1024); | |
| detachBuffer(data.data.buffer); | |
| let detector = new TextDetector(); | |
| try { | |
| await detector.detect(data); | |
| assert_unreached(); | |
| } catch (e) { | |
| assert_equals(e.code, DOMException.INVALID_STATE_ERR); | |
| } | |
| }, 'TextDetector.detect() rejects on a detached buffer'); | |
| </script> |