blob: e4ca6772007d085ce1d54d0cec6f24487c8475fa [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Test passing capture device IDs to getUserMedia</title>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script>
promise_test((test) => {
return navigator.mediaDevices.enumerateDevices()
.then((devices) => {
assert_greater_than(devices.length, 0);
let device = devices[0];
assert_true(device instanceof MediaDeviceInfo);
assert_class_string(device, "MediaDeviceInfo");
assert_true('deviceId' in device);
assert_true('kind' in device);
assert_true('label' in device);
assert_true('groupId' in device);
assert_true('toJSON' in device);
let serializedResult = device.toJSON();
assert_equals(serializedResult['deviceId'], device.deviceId);
assert_equals(serializedResult['kind'], device.kind);
assert_equals(serializedResult['label'], device.label);
assert_equals(serializedResult['groupId'], device.groupId);
});
}, "Test properties of MediaDeviceInfo");
promise_test(async (test) => {
await navigator.mediaDevices.enumerateDevices();
const devices = await navigator.mediaDevices.enumerateDevices();
assert_equals(devices.length, 2);
assert_equals(devices[0].kind, "audioinput");
assert_equals(devices[1].kind, "videoinput");
}, "Ensure enumerateDevices exposes both microphone and camera");
</script>
</head>
<body>
</body>
</html>