33 Components.utils.import(
"resource://gre/modules/XPCOMUtils.jsm");
34 Components.utils.import(
"resource://app/jsmodules/ArrayConverter.jsm");
35 Components.utils.import(
"resource://app/jsmodules/sbProperties.jsm");
36 Components.utils.import(
"resource://app/jsmodules/sbLibraryUtils.jsm");
40 var mediacoreManager =
Cc[
"@songbirdnest.com/Songbird/Mediacore/Manager;1"]
41 .getService(
Ci.sbIMediacoreManager);
43 log(
"Testing basic event target functionality\n");
51 this.wrappedJSObject =
this;
57 onMediacoreEvent:
function(
event) {
62 var eventIDs = [
Ci.sbIMediacoreEvent.METADATA_CHANGE,
63 Ci.sbIMediacoreEvent.URI_CHANGE,
64 Ci.sbIMediacoreEvent.DURATION_CHANGE,
65 Ci.sbIMediacoreEvent.VOLUME_CHANGE,
66 Ci.sbIMediacoreEvent.MUTE_CHANGE,
67 Ci.sbIMediacoreEvent.STREAM_FOUND,
68 Ci.sbIMediacoreEvent.BUFFERING,
69 Ci.sbIMediacoreEvent.BUFFER_UNDERRUN,
70 Ci.sbIMediacoreEvent.STREAM_START,
71 Ci.sbIMediacoreEvent.STREAM_PAUSE,
72 Ci.sbIMediacoreEvent.STREAM_END];
76 this.wrappedJSObject =
this;
86 mediaManager.addListener(listener);
87 for (index = 0; index < eventIDs.length; ++index) {
89 mediaManager.dispatchEvent(
event,
false);
91 assertEqual(listener.log.length, eventIDs.length,
"event received count not equal to events sent");
92 for (index = 0; index < eventIDs.length; ++index) {
93 assertEqual(listener.log[index].type, eventIDs[index],
"Event type doesn't match event ID sent");
95 mediaManager.removeListener(listener);
96 listener.wrappedJSObject =
null;
sbOSDControlService prototype QueryInterface
function assertEqual(aExpected, aActual, aMessage)