mirror of
https://github.com/hensm/fx_cast.git
synced 2026-06-08 16:49:58 +00:00
292 lines
12 KiB
JavaScript
292 lines
12 KiB
JavaScript
"use strict";
|
|
|
|
describe("chrome", () => {
|
|
it("should exist", () => {
|
|
expect(chrome).toBeDefined();
|
|
expect(chrome.cast).toBeDefined();
|
|
expect(chrome.cast.media).toBeDefined();
|
|
});
|
|
|
|
describe("chrome.cast", () => {
|
|
it("should have all api methods", () => {
|
|
expect(chrome.cast.addReceiverActionListener).toBeDefined();
|
|
expect(chrome.cast.initialize).toBeDefined();
|
|
expect(chrome.cast.logMessage).toBeDefined();
|
|
expect(chrome.cast.precache).toBeDefined();
|
|
expect(chrome.cast.removeReceiverActionListener).toBeDefined();
|
|
expect(chrome.cast.requestSession).toBeDefined();
|
|
expect(chrome.cast.requestSessionById).toBeDefined();
|
|
expect(chrome.cast.setCustomReceivers).toBeDefined();
|
|
expect(chrome.cast.setPageContext).toBeDefined();
|
|
expect(chrome.cast.setReceiverDisplayStatus).toBeDefined();
|
|
expect(chrome.cast.unescape).toBeDefined();
|
|
});
|
|
|
|
it("should not have private api methods", () => {
|
|
expect(chrome.cast._requestSession).toBeUndefined();
|
|
});
|
|
|
|
it("should have all api classes", () => {
|
|
expect(chrome.cast.ApiConfig).toBeDefined();
|
|
expect(chrome.cast.DialRequest).toBeDefined();
|
|
expect(chrome.cast.Error).toBeDefined();
|
|
expect(chrome.cast.Image).toBeDefined();
|
|
expect(chrome.cast.Receiver).toBeDefined();
|
|
expect(chrome.cast.ReceiverDisplayStatus).toBeDefined();
|
|
expect(chrome.cast.SenderApplication).toBeDefined();
|
|
expect(chrome.cast.Session).toBeDefined();
|
|
expect(chrome.cast.SessionRequest).toBeDefined();
|
|
expect(chrome.cast.Timeout).toBeDefined();
|
|
expect(chrome.cast.Volume).toBeDefined();
|
|
});
|
|
|
|
it("should have all api enums", () => {
|
|
expect(chrome.cast.AutoJoinPolicy).toEqual(
|
|
jasmine.objectContaining({
|
|
CUSTOM_CONTROLLER_SCOPED: "custom_controller_scoped",
|
|
TAB_AND_ORIGIN_SCOPED: "tab_and_origin_scoped",
|
|
ORIGIN_SCOPED: "origin_scoped",
|
|
PAGE_SCOPED: "page_scoped"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.Capability).toEqual(
|
|
jasmine.objectContaining({
|
|
VIDEO_OUT: "video_out",
|
|
AUDIO_OUT: "audio_out",
|
|
VIDEO_IN: "video_in",
|
|
AUDIO_IN: "audio_in",
|
|
MULTIZONE_GROUP: "multizone_group"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.DefaultActionPolicy).toEqual(
|
|
jasmine.objectContaining({
|
|
CREATE_SESSION: "create_session",
|
|
CAST_THIS_TAB: "cast_this_tab"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.DialAppState).toEqual(
|
|
jasmine.objectContaining({
|
|
RUNNING: "running",
|
|
STOPPED: "stopped",
|
|
ERROR: "error"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.ErrorCode).toEqual(
|
|
jasmine.objectContaining({
|
|
CANCEL: "cancel",
|
|
TIMEOUT: "timeout",
|
|
API_NOT_INITIALIZED: "api_not_initialized",
|
|
INVALID_PARAMETER: "invalid_parameter",
|
|
EXTENSION_NOT_COMPATIBLE: "extension_not_compatible",
|
|
EXTENSION_MISSING: "extension_missing",
|
|
RECEIVER_UNAVAILABLE: "receiver_unavailable",
|
|
SESSION_ERROR: "session_error",
|
|
CHANNEL_ERROR: "channel_error",
|
|
LOAD_MEDIA_FAILED: "load_media_failed"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.ReceiverAction).toEqual(
|
|
jasmine.objectContaining({
|
|
CAST: "cast",
|
|
STOP: "stop"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.ReceiverAvailability).toEqual(
|
|
jasmine.objectContaining({
|
|
AVAILABLE: "available",
|
|
UNAVAILABLE: "unavailable"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.ReceiverType).toEqual(
|
|
jasmine.objectContaining({
|
|
CAST: "cast",
|
|
DIAL: "dial",
|
|
HANGOUT: "hangout",
|
|
CUSTOM: "custom"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.SenderPlatform).toEqual(
|
|
jasmine.objectContaining({
|
|
CHROME: "chrome",
|
|
IOS: "ios",
|
|
ANDROID: "android"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.SessionStatus).toEqual(
|
|
jasmine.objectContaining({
|
|
CONNECTED: "connected",
|
|
DISCONNECTED: "disconnected",
|
|
STOPPED: "stopped"
|
|
})
|
|
);
|
|
|
|
expect(chrome.cast.VolumeControlType).toEqual(
|
|
jasmine.objectContaining({
|
|
ATTENUATION: "attenuation",
|
|
FIXED: "fixed",
|
|
MASTER: "master"
|
|
})
|
|
);
|
|
});
|
|
});
|
|
|
|
describe("chrome.cast.media", () => {
|
|
it("should have all api classes", () => {
|
|
expect(chrome.cast.media.EditTracksInfoRequest).toBeDefined();
|
|
expect(chrome.cast.media.GenericMediaMetadata).toBeDefined();
|
|
expect(chrome.cast.media.GetStatusRequest).toBeDefined();
|
|
expect(chrome.cast.media.LoadRequest).toBeDefined();
|
|
expect(chrome.cast.media.Media).toBeDefined();
|
|
expect(chrome.cast.media.MediaInfo).toBeDefined();
|
|
expect(chrome.cast.media.MovieMediaMetadata).toBeDefined();
|
|
expect(chrome.cast.media.MusicTrackMediaMetadata).toBeDefined();
|
|
expect(chrome.cast.media.PauseRequest).toBeDefined();
|
|
expect(chrome.cast.media.PhotoMediaMetadata).toBeDefined();
|
|
expect(chrome.cast.media.PlayRequest).toBeDefined();
|
|
expect(chrome.cast.media.QueueInsertItemsRequest).toBeDefined();
|
|
expect(chrome.cast.media.QueueItem).toBeDefined();
|
|
expect(chrome.cast.media.QueueLoadRequest).toBeDefined();
|
|
expect(chrome.cast.media.QueueRemoveItemsRequest).toBeDefined();
|
|
expect(chrome.cast.media.QueueReorderItemsRequest).toBeDefined();
|
|
expect(chrome.cast.media.QueueUpdateItemsRequest).toBeDefined();
|
|
expect(chrome.cast.media.SeekRequest).toBeDefined();
|
|
expect(chrome.cast.media.StopRequest).toBeDefined();
|
|
expect(chrome.cast.media.TextTrackStyle).toBeDefined();
|
|
expect(chrome.cast.media.Track).toBeDefined();
|
|
expect(chrome.cast.media.TvShowMediaMetadata).toBeDefined();
|
|
expect(chrome.cast.media.VolumeRequest).toBeDefined();
|
|
});
|
|
|
|
it("should have all api enums", () => {
|
|
expect(chrome.cast.media.IdleReason).toEqual(
|
|
jasmine.objectContaining({
|
|
CANCELLED: "CANCELLED",
|
|
INTERRUPTED: "INTERRUPTED",
|
|
FINISHED: "FINISHED",
|
|
ERROR: "ERROR"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.MediaCommand).toEqual(
|
|
jasmine.objectContaining({
|
|
PAUSE: "pause",
|
|
SEEK: "seek",
|
|
STREAM_VOLUME: "stream_volume",
|
|
STREAM_MUTE: "stream_mute"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.MetadataType).toEqual(
|
|
jasmine.objectContaining({
|
|
GENERIC: 0,
|
|
MOVIE: 1,
|
|
TV_SHOW: 2,
|
|
MUSIC_TRACK: 3,
|
|
PHOTO: 4
|
|
})
|
|
);
|
|
expect(chrome.cast.media.PlayerState).toEqual(
|
|
jasmine.objectContaining({
|
|
IDLE: "IDLE",
|
|
PLAYING: "PLAYING",
|
|
PAUSED: "PAUSED",
|
|
BUFFERING: "BUFFERING"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.RepeatMode).toEqual(
|
|
jasmine.objectContaining({
|
|
OFF: "REPEAT_OFF",
|
|
ALL: "REPEAT_ALL",
|
|
SINGLE: "REPEAT_SINGLE",
|
|
ALL_AND_SHUFFLE: "REPEAT_ALL_AND_SHUFFLE"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.ResumeState).toEqual(
|
|
jasmine.objectContaining({
|
|
PLAYBACK_START: "PLAYBACK_START",
|
|
PLAYBACK_PAUSE: "PLAYBACK_PAUSE"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.StreamType).toEqual(
|
|
jasmine.objectContaining({
|
|
BUFFERED: "BUFFERED",
|
|
LIVE: "LIVE",
|
|
OTHER: "OTHER"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.TextTrackEdgeType).toEqual(
|
|
jasmine.objectContaining({
|
|
NONE: "NONE",
|
|
OUTLINE: "OUTLINE",
|
|
DROP_SHADOW: "DROP_SHADOW",
|
|
RAISED: "RAISED",
|
|
DEPRESSED: "DEPRESSED"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.TextTrackFontGenericFamily).toEqual(
|
|
jasmine.objectContaining({
|
|
SANS_SERIF: "SANS_SERIF",
|
|
MONOSPACED_SANS_SERIF: "MONOSPACED_SANS_SERIF",
|
|
SERIF: "SERIF",
|
|
MONOSPACED_SERIF: "MONOSPACED_SERIF",
|
|
CASUAL: "CASUAL",
|
|
CURSIVE: "CURSIVE",
|
|
SMALL_CAPITALS: "SMALL_CAPITALS"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.TextTrackFontStyle).toEqual(
|
|
jasmine.objectContaining({
|
|
NORMAL: "NORMAL",
|
|
BOLD: "BOLD",
|
|
BOLD_ITALIC: "BOLD_ITALIC",
|
|
ITALIC: "ITALIC"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.TextTrackType).toEqual(
|
|
jasmine.objectContaining({
|
|
SUBTITLES: "SUBTITLES",
|
|
CAPTIONS: "CAPTIONS",
|
|
DESCRIPTIONS: "DESCRIPTIONS",
|
|
CHAPTERS: "CHAPTERS",
|
|
METADATA: "METADATA"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.TextTrackWindowType).toEqual(
|
|
jasmine.objectContaining({
|
|
NONE: "NONE",
|
|
NORMAL: "NORMAL",
|
|
ROUNDED_CORNERS: "ROUNDED_CORNERS"
|
|
})
|
|
);
|
|
expect(chrome.cast.media.TrackType).toEqual(
|
|
jasmine.objectContaining({
|
|
TEXT: "TEXT",
|
|
AUDIO: "AUDIO",
|
|
VIDEO: "VIDEO"
|
|
})
|
|
);
|
|
});
|
|
|
|
describe("chrome.cast.media.timeout", () => {
|
|
it("should have all properties", () => {
|
|
expect(chrome.cast.media.timeout.editTracksInfo).toBe(0);
|
|
expect(chrome.cast.media.timeout.getStatus).toBe(0);
|
|
expect(chrome.cast.media.timeout.load).toBe(0);
|
|
expect(chrome.cast.media.timeout.pause).toBe(0);
|
|
expect(chrome.cast.media.timeout.play).toBe(0);
|
|
expect(chrome.cast.media.timeout.queue).toBe(0);
|
|
expect(chrome.cast.media.timeout.seek).toBe(0);
|
|
expect(chrome.cast.media.timeout.setVolume).toBe(0);
|
|
expect(chrome.cast.media.timeout.stop).toBe(0);
|
|
});
|
|
});
|
|
});
|
|
});
|