1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
<!--
Copyright 2013 The Chromium Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<!DOCTYPE html>
<html>
<head>
<script src="webui_resource_test.js"></script>
<script src="util.js"></script>
<script src="player_manager.js"></script>
<script src="player_info.js"></script>
<script src="main.js"></script>
</head>
<body>
<script>
window.setUp = function() {
var doNothing = function() {};
var mockRenderer = {
redrawList: doNothing,
update: doNothing,
select: doNothing
};
var manager = new PlayerManager(mockRenderer);
media.initialize(manager);
window.playerManager = manager;
};
// The renderer and player ids are completely arbitrarily.
var TEST_RENDERER = 12;
var TEST_PLAYER = 4;
var TEST_NAME = TEST_RENDERER + ':' + TEST_PLAYER;
// Correctly use the information from a media event.
window.testOnMediaEvent = function() {
var event = {
ticksMillis: 132,
renderer: TEST_RENDERER,
player: TEST_PLAYER,
params: {
fps: 60,
other: 'hi'
}
};
window.media.onMediaEvent(event);
var info = window.playerManager.players_[TEST_NAME];
assertEquals(event.ticksMillis, info.firstTimestamp_);
assertEquals(TEST_NAME, info.id);
assertEquals(event.params.fps, info.properties.fps);
};
// Remove a player.
window.testOnRenderTerminated = function() {
window.testOnMediaEvent();
window.playerManager.shouldRemovePlayer_ = function() {
return true;
};
window.media.onRendererTerminated(TEST_RENDERER);
assertEquals(undefined, window.playerManager.players_[TEST_NAME]);
};
// Audio Streams are weird, they are handled separately
window.testAddAudioStream = function() {
var event = {
id: 'ID',
status: 'created',
playing: true
};
window.media.addAudioStream(event);
var player = window.playerManager.players_[event.id];
assertTrue(undefined !== player);
assertEquals(event.playing, player.properties['playing']);
};
runTests();
</script>
</body>
</html>
|