| <script src="../../resources/js-test-pre.js"></script> |
| function testWhenDisabled() |
| debug(`<br>*** Disable mock capture devices`); |
| evalAndLog(`internals.setMockMediaCaptureDevicesEnabled(false)`); |
| .getUserMedia({audio:{}, video:{}}) |
| testFailed(`mediaDevices.getUserMedia() succeeded when no devices should be available`); |
| testPassed(`mediaDevices.getUserMedia() failed with ${err.name}`); |
| debug(`<br>*** Enable mock capture devices`); |
| evalAndLog(`internals.setMockMediaCaptureDevicesEnabled(true)`); |
| function testWhenEnabled(nextTest) |
| .getUserMedia({audio:{}, video:{}}) |
| shouldBeType("mediaStream", "Object"); |
| shouldBe("mediaStream.getTracks().length", "2"); |
| testFailed(`mediaDevices.getUserMedia() failed with ${err.name}`); |
| debug(`<br>*** Mock capture devices should be enabled by default`); |
| testRunner.setUserMediaPermission(true); |
| testWhenEnabled(testWhenDisabled); |
| description("Test enabling/disabling mock media capture devices"); |
| window.jsTestIsAsync = true; |
| window.successfullyParsed = true; |
| <script src="../../resources/js-test-post.js"></script> |