blob: 37d3ee680269ab6ac9c67acb13fecc42679ab67d [file] [log] [blame]
Tests applyConstraints on a video stream track.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
PASS stream.getVideoTracks().length is 1
PASS stream.getAudioTracks().length is 0
PASS video.videoTracks.length is 1
PASS video.audioTracks.length is 0
** Constraint: {"width":640,"height":480,"frameRate":30} - set width, height, and frame rate to valid values.
PASS settings['width'] is 640
PASS settings['height'] is 480
PASS settings['frameRate'] is 30
** Constraint: {"width":320,"height":240} - change width and height, frame rate should remain unchanged.
PASS settings['width'] is 320
PASS settings['height'] is 240
PASS settings['frameRate'] is 30
** Constraint: {"width":{"exact":2000}} - the 'exact' constraint can't be satisfied, promise should reject and no settings should change.
PASS Promise was rejected
PASS error.constraint is "width"
PASS settings['width'] is 320
PASS settings['height'] is 240
PASS settings['frameRate'] is 30
** Constraint: {"width":640,"height":{"min":3000}} - the 'min' constraint can't be satisfied, promise should reject and no settings should change.
PASS Promise was rejected
PASS error.constraint is "height"
PASS settings['width'] is 320
PASS settings['height'] is 240
PASS settings['frameRate'] is 30
** Constraint: {"frameRate":{"max":8}} - the 'max' constraint can't be satisfied, promise should reject and no settings should change.
PASS Promise was rejected
PASS error.constraint is "frameRate"
PASS settings['frameRate'] is 30
** Constraint: {"width":{"exact":640}} - the 'exact' constraint can be satisfied.
PASS settings['width'] is 640
PASS settings['height'] is 480
** Constraint: {"width":{"min":300,"ideal":5000}} - the 'ideal' constraint can't be satisfied but the 'min' can, maximum value should be chosen.
PASS settings['width'] is 1280
PASS settings['height'] is 720
** Constraint: {"width":{"min":320,"ideal":640},"height":{"min":480,"ideal":720}} - 'ideal' and 'min' constraints can be satisfied, 'ideal' should be chosen.
PASS settings['width'] is 640
PASS settings['height'] is 720
** Constraint: {"width":5000} - ideal width is greater than track capability, should be clamped to the maximum value.
PASS settings['width'] is 1280
** Constraint: {"width":100,"height":100,"frameRate":4} - all values are less than track capabilities, should be clamped to the minimum values.
PASS settings['width'] is 112
PASS settings['height'] is 112
PASS settings['frameRate'] is 5
** Constraint: {"frameRate":20} - set frame rate, width and height should remain unchanged
PASS settings['width'] is 112
PASS settings['height'] is 112
PASS settings['frameRate'] is 20
** Constraint: {"facingMode":"xnvironment","height":720} - illegal facing mode value should be ignored, height should change.
PASS settings['facingMode'] is "user"
PASS settings['width'] is 1280
PASS settings['height'] is 720
** Constraint: {"WITDH":400,"frameRate":30} - unknown constraint should be ignored, frame rate should change.
PASS settings['width'] is 1280
PASS settings['frameRate'] is 30
PASS successfullyParsed is true
TEST COMPLETE