Bug 1444896 [wpt PR 9971] - Implement InputDeviceInfo.getCapabilities() for video devices, a=testonly

Automatic update from web-platform-testsImplement InputDeviceInfo.getCapabilities() for video devices

Bug: 817769
Change-Id: I3f06b5f2360c570ff8c5b4bd800ca1014cc7d088
Reviewed-on: https://chromium-review.googlesource.com/956383
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Raymes Khoury <raymes@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543664}

wpt-commits: 74b0e6ccadb2addc10eb110e403d0086b7cb982a
wpt-pr: 9971
wpt-commits: 74b0e6ccadb2addc10eb110e403d0086b7cb982a
wpt-pr: 9971
This commit is contained in:
Chandan Padhi 2018-04-09 17:11:03 +00:00 committed by James Graham
parent c5b925686f
commit a6da176259
2 changed files with 32 additions and 1 deletions

View File

@ -573594,7 +573594,7 @@
"testharness"
],
"mediacapture-streams/MediaDevices-enumerateDevices.https.html": [
"1fb376d675c685d5de76fef0e840e440de3e3268",
"892229b737d157845d9b2e24170f3bc820b10036",
"testharness"
],
"mediacapture-streams/MediaDevices-getUserMedia.https.html": [

View File

@ -34,6 +34,10 @@ promise_test(function() {
if (mediainfo.kind == "audioinput") {
assert_equals(typeof capabilities.echoCancellation, "object", "echoCancellation must be an object.");
}
if (mediainfo.kind == "videoinput") {
assert_equals(typeof capabilities.facingMode, "object", "facingMode must be an object.");
verifyVideoRangeProperties(capabilities);
}
} else if ( mediainfo.kind == "audiooutput" ) {
assert_true(mediainfo instanceof MediaDeviceInfo);
} else {
@ -42,6 +46,33 @@ promise_test(function() {
}
});
}, "mediaDevices.enumerateDevices() is present and working on navigator");
function verifyVideoRangeProperties(capabilities) {
if (capabilities.hasOwnProperty('width')) {
assert_equals(Object.keys(capabilities.width).length, 2);
assert_true(capabilities.width.hasOwnProperty('min'));
assert_true(capabilities.width.hasOwnProperty('max'));
assert_less_than_equal(capabilities.width.min, capabilities.width.max);
}
if (capabilities.hasOwnProperty('height')) {
assert_equals(Object.keys(capabilities.height).length, 2);
assert_true(capabilities.height.hasOwnProperty('min'));
assert_true(capabilities.height.hasOwnProperty('max'));
assert_less_than_equal(capabilities.height.min, capabilities.height.max);
}
if (capabilities.hasOwnProperty('aspectRatio')) {
assert_equals(Object.keys(capabilities.aspectRatio).length, 2);
assert_true(capabilities.aspectRatio.hasOwnProperty('min'));
assert_true(capabilities.aspectRatio.hasOwnProperty('max'));
assert_less_than_equal(capabilities.aspectRatio.min, capabilities.aspectRatio.max);
}
if (capabilities.hasOwnProperty('frameRate')) {
assert_equals(Object.keys(capabilities.frameRate).length, 2);
assert_true(capabilities.frameRate.hasOwnProperty('min'));
assert_true(capabilities.frameRate.hasOwnProperty('max'));
assert_less_than_equal(capabilities.frameRate.min, capabilities.frameRate.max);
}
}
</script>
</body>
</html>