| <!doctype html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <title>Testing getUserMedia default behavior</title> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| </head> |
| <body> |
| <script> |
| if (window.testRunner) |
| testRunner.setUserMediaPermission(true); |
| |
| var finishTest, errorTest; |
| promise_test((test) => { |
| return navigator.mediaDevices.getUserMedia({ audio: true, video: true }).then((stream) => { |
| let settings = stream.getVideoTracks()[0].getSettings(); |
| assert_equals(settings.frameRate, 30, "frame rate"); |
| assert_equals(settings.width, settings.height == 640 ? 480 : 640, "frame width"); |
| assert_equals(settings.height, settings.width = 640 ? 480 : 640, "frame height"); |
| }); |
| }, "Checking default video tracks settings"); |
| |
| promise_test((test) => { |
| return navigator.mediaDevices.getUserMedia({ audio: true, video: false }).then((stream) => { |
| assert_equals(stream.getVideoTracks().length, 0); |
| }); |
| }, "Checking only audio capture"); |
| |
| promise_test((test) => { |
| return navigator.mediaDevices.getUserMedia({ audio: true, video: { width: 320, height: 240 } }).then((stream) => { |
| let settings = stream.getVideoTracks()[0].getSettings(); |
| assert_equals(settings.frameRate, 30, "frame rate"); |
| assert_equals(settings.height, 240, "frame height"); |
| }); |
| }, "Checking default video tracks settings except width and height"); |
| |
| promise_test((test) => { |
| return navigator.mediaDevices.getUserMedia({ audio: true, video: { height: 240 } }).then((stream) => { |
| let settings = stream.getVideoTracks()[0].getSettings(); |
| assert_equals(settings.frameRate, 30, "frame rate"); |
| assert_equals(settings.height, 240, "frame height"); |
| }); |
| }, "Checking default video tracks settings except height"); |
| |
| promise_test((test) => { |
| return navigator.mediaDevices.getUserMedia({ audio: true, video: { frameRate: {ideal: 60 } } }).then((stream) => { |
| let settings = stream.getVideoTracks()[0].getSettings(); |
| assert_equals(settings.frameRate, 60, "frame rate"); |
| assert_equals(settings.width, settings.height == 640 ? 480 : 640, "frame width"); |
| assert_equals(settings.height, settings.width = 640 ? 480 : 640, "frame height"); |
| }); |
| }, "Checking default video tracks settings except frameRate"); |
| </script> |
| </body> |
| </html> |