Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add autoplay to video tags for all tests #161

Merged
merged 5 commits into from
Jan 18, 2016
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 35 additions & 26 deletions test/test.js
Original file line number Diff line number Diff line change
Expand Up @@ -340,11 +340,12 @@ test('attachMediaStream', function(t) {

var video = document.createElement('video');
video.setAttribute('id', 'video');
video.setAttribute('autoplay', 'true');
// If attachMediaStream works, we should get a video
// at some point. This will trigger onloadedmetadata.
// at some point. This will trigger onresize.
// Firefox < 38 had issues with this, workaround removed
// due to 38 being stable now.
video.addEventListener('loadedmetadata', function() {
video.addEventListener('resize', function() {
document.body.appendChild(video);
});

Expand Down Expand Up @@ -377,7 +378,7 @@ test('attachMediaStream', function(t) {
})
.then(function(isMediaStream) {
t.ok(isMediaStream, 'Stream is a MediaStream');
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
// 5 second timeout in case the event does not fire for some reason.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('video')), 3000);
Expand Down Expand Up @@ -421,16 +422,18 @@ test('reattachMediaStream', function(t) {
var video = document.createElement('video');
var video2 = document.createElement('video');
video.setAttribute('id', 'video');
video.setAttribute('autoplay', 'true');
video2.setAttribute('id', 'video2');
video2.setAttribute('autoplay', 'true');
// If attachMediaStream works, we should get a video
// at some point. This will trigger onloadedmetadata.
// at some point. This will trigger onresize.
// This reattaches to the second video which will trigger
// onloadedmetadata there.
video.addEventListener('loadedmetadata', function() {
// onresize there.
video.addEventListener('resize', function() {
document.body.appendChild(video);
reattachMediaStream(video2, video);
});
video2.addEventListener('loadedmetadata', function() {
video2.addEventListener('resize', function() {
document.body.appendChild(video2);
});

Expand Down Expand Up @@ -463,7 +466,7 @@ test('reattachMediaStream', function(t) {
})
.then(function(isMediaStream) {
t.ok(isMediaStream, 'Stream is a MediaStream');
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('video')), 3000);
})
Expand All @@ -479,7 +482,7 @@ test('reattachMediaStream', function(t) {
t.ok(height > 2, 'Video height is: ' + height);
});
});
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('video2')), 3000);
})
Expand Down Expand Up @@ -521,10 +524,11 @@ test('Video srcObject getter/setter test', function(t) {

var video = document.createElement('video');
video.setAttribute('id', 'video');
video.setAttribute('autoplay', 'true');
video.srcObject = stream;
// If attachMediaStream works, we should get a video
// at some point. This will trigger onloadedmetadata.
video.addEventListener('loadedmetadata', function() {
// at some point. This will trigger onresize.
video.addEventListener('resize', function() {
document.body.appendChild(video);
});
callback(null);
Expand All @@ -544,7 +548,7 @@ test('Video srcObject getter/setter test', function(t) {
.then(function(error) {
var gumResult = (error) ? 'error: ' + error : 'no errors';
t.ok(!error, 'getUserMedia result: ' + gumResult);
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('video')), 3000);
})
Expand Down Expand Up @@ -589,7 +593,7 @@ test('Audio srcObject getter/setter test', function(t) {
audio.setAttribute('id', 'audio');
audio.srcObject = stream;
// If attachMediaStream works, we should get a video
// at some point. This will trigger onloadedmetadata.
// at some point. This will trigger onresize.
audio.addEventListener('loadedmetadata', function() {
document.body.appendChild(audio);
});
Expand All @@ -610,7 +614,7 @@ test('Audio srcObject getter/setter test', function(t) {
.then(function(error) {
var gumResult = (error) ? 'error: ' + error : 'no errors';
t.ok(!error, 'getUserMedia result: ' + gumResult);
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
// 5 second timeout in case the event does not fire for some reason.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('audio')), 3000);
Expand Down Expand Up @@ -652,13 +656,15 @@ test('srcObject set from another object', function(t) {
var video = document.createElement('video');
var video2 = document.createElement('video2');
video.setAttribute('id', 'video');
video.setAttribute('autoplay', 'true');
video2.setAttribute('id', 'video2');
video2.setAttribute('autoplay', 'true');
video.srcObject = stream;
video2.srcObject = video.srcObject;

// If attachMediaStream works, we should get a video
// at some point. This will trigger onloadedmetadata.
video.addEventListener('loadedmetadata', function() {
// at some point. This will trigger onresize.
video.addEventListener('resize', function() {
document.body.appendChild(video);
document.body.appendChild(video2);
});
Expand All @@ -679,7 +685,7 @@ test('srcObject set from another object', function(t) {
.then(function(error) {
var gumResult = (error) ? 'error: ' + error : 'no errors';
t.ok(!error, 'getUserMedia result: ' + gumResult);
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
// 5 second timeout in case the event does not fire for some reason.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('video2')), 3000);
Expand Down Expand Up @@ -721,11 +727,12 @@ test('Attach mediaStream directly', function(t) {

var video = document.createElement('video');
video.setAttribute('id', 'video');
video.setAttribute('autoplay', 'true');
// If attachMediaStream works, we should get a video
// at some point. This will trigger onloadedmetadata.
// at some point. This will trigger onresize.
// Firefox < 38 had issues with this, workaround removed
// due to 38 being stable now.
video.addEventListener('loadedmetadata', function() {
video.addEventListener('resize', function() {
document.body.appendChild(video);
});

Expand Down Expand Up @@ -758,7 +765,7 @@ test('Attach mediaStream directly', function(t) {
})
.then(function(isMediaStream) {
t.ok(isMediaStream, 'Stream is a MediaStream');
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
// 5 second timeout in case the event does not fire for some reason.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('video')), 3000);
Expand Down Expand Up @@ -802,16 +809,18 @@ test('Re-attaching mediaStream directly', function(t) {
var video = document.createElement('video');
var video2 = document.createElement('video');
video.setAttribute('id', 'video');
video.setAttribute('autoplay', 'true');
video2.setAttribute('id', 'video2');
video2.setAttribute('autoplay', 'true');
// If attachMediaStream works, we should get a video
// at some point. This will trigger onloadedmetadata.
// at some point. This will trigger onresize.
// This reattaches to the second video which will trigger
// onloadedmetadata there.
video.addEventListener('loadedmetadata', function() {
// onresize there.
video.addEventListener('resize', function() {
document.body.appendChild(video);
video2.srcObject = video.srcObject;
});
video2.addEventListener('loadedmetadata', function() {
video2.addEventListener('resize', function() {
document.body.appendChild(video2);
});

Expand Down Expand Up @@ -846,7 +855,7 @@ test('Re-attaching mediaStream directly', function(t) {
})
.then(function(isMediaStream) {
t.ok(isMediaStream, 'Stream is a MediaStream');
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
// 5 second timeout in case the event does not fire for some reason.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('video')), 3000);
Expand All @@ -863,7 +872,7 @@ test('Re-attaching mediaStream directly', function(t) {
t.ok(height > 2, 'Video height is: ' + height);
});
});
// Wait until loadedmetadata event has fired and appended video element.
// Wait until resize event has fired and appended video element.
// 5 second timeout in case the event does not fire for some reason.
return driver.wait(webdriver.until.elementLocated(
webdriver.By.id('video2')), 3000);
Expand Down