Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Unified Diff: third_party/WebKit/LayoutTests/media/video-capture-canvas.html

Issue 2112003002: Convert video-canvas* and video-capture* tests to testharness.js (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: use timeupdate event Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/media/video-capture-canvas.html
diff --git a/third_party/WebKit/LayoutTests/media/video-capture-canvas.html b/third_party/WebKit/LayoutTests/media/video-capture-canvas.html
index 4eff21c18ccd172047cd2a3170c3203b06df0c34..b0f7566f15d86e0720de1f8422a50278fadb0925 100644
--- a/third_party/WebKit/LayoutTests/media/video-capture-canvas.html
+++ b/third_party/WebKit/LayoutTests/media/video-capture-canvas.html
@@ -1,70 +1,34 @@
-<!DOCTYPE HTML">
-<html>
-<head>
-<script src=media-file.js></script>
-<!-- TODO(foolip): Convert test to testharness.js. crbug.com/588956
- (Please avoid writing new tests using video-test.js) -->
-<script src=video-test.js></script>
-<script src=video-played.js></script>
-<script src="../resources/js-test.js"></script>
-
-<script type="text/javascript">
-
-if (window.internals)
- window.internals.settings.setMediaPlaybackRequiresUserGesture(true);
-
-function gotStream(stream)
-{
- consoleWrite("got a stream");
- previewURL = URL.createObjectURL(stream);
- video.src = previewURL;
- consoleWrite("start preview");
-}
-
-function gotStreamFailed(error)
-{
- consoleWrite("Failed to get access to local media. Error code was " + error.code);
-}
-
-function canplaythrough()
-{
- width = canvas.width;
- height = canvas.height;
- ctx = canvas.getContext("2d");
- ctx.fillStyle = 'black';
- ctx.fillRect(0, 0, width, height);
-
- consoleWrite("paint to canvas");
- ctx.drawImage(video, 0, 0, width, height);
- shouldBeTrue("!!ctx.getImageData(0, 0, width, height)");
-
- frame = ctx.getImageData(0, 0, width, height);
- r = frame.data[0];
- g = frame.data[1];
- b = frame.data[2];
- testExpected("r+g+b", 0, "!=");
- endTest();
-}
-
-function playPreview()
-{
- findMediaElement();
- canvas = document.getElementsByTagName('canvas')[0];
- try {
- consoleWrite("request access to local media");
- navigator.webkitGetUserMedia({video:true}, gotStream, gotStreamFailed);
- } catch (e) {
- consoleWrite("getUserMedia error " + "(" + e.name + " / " + e.message + ")");
+<!DOCTYPE html>
+<title>Verify drawing video frames to canvas using media stream.</title>
+<script src="../resources/testharness.js"></script>
+<script src="../resources/testharnessreport.js"></script>
+<video></video>
+<canvas width="1" height="1"></canvas>
+<script>
+async_test(function(t) {
+ var video = document.querySelector("video");
+ var canvas = document.querySelector("canvas");
+ navigator.webkitGetUserMedia({ video: true }, function(stream) {
+ // start preview.
+ video.src = URL.createObjectURL(stream);
+ }, getStreamFailed);
+
+ function getStreamFailed(error) {
+ t.unreached_func();
}
- waitForEvent('canplaythrough', canplaythrough);
-}
-
-</script>
-</head>
-
-<body onload="playPreview()">
-<video width="320" height="240" autoplay="autoplay"></video>
-<canvas width="1" height="1" ></canvas>
-</body>
-</html>
+ video.oncanplaythrough = t.step_func_done(function() {
+ var width = canvas.width;
+ var height = canvas.height;
+ var ctx = canvas.getContext("2d");
+ ctx.fillStyle = "black";
+ ctx.fillRect(0, 0, width, height);
+
+ // paint to canvas.
+ ctx.drawImage(video, 0, 0, width, height);
+ var frame = ctx.getImageData(0, 0, width, height);
+ assert_not_equals(frame, null);
+ assert_not_equals(frame.data[0] + frame.data[1] + frame.data[2], 0);
+ });
+});
+</script>

Powered by Google App Engine
This is Rietveld 408576698