UNPKG

videogular2

Version:

Videogular is a video application framework for desktop and mobile powered by Angular 2.0

84 lines 9.72 kB
"use strict"; var vg_play_pause_1 = require("./vg-play-pause"); var vg_api_1 = require("../../core/services/vg-api"); var vg_states_1 = require("../../core/states/vg-states"); describe('Play/Pause Button', function () { var playPause; var ref; var api; beforeEach(function () { ref = { nativeElement: { getAttribute: function (name) { return name; } } }; api = new vg_api_1.VgAPI(); api.medias = { main: { state: vg_states_1.VgStates.VG_PLAYING }, secondary: { state: vg_states_1.VgStates.VG_PAUSED } }; playPause = new vg_play_pause_1.VgPlayPause(ref, api); }); it('Should get media by id on init', function () { spyOn(api, 'getMediaById').and.callFake(function () { return { volume: 1 }; }); playPause.vgFor = 'test'; playPause.onPlayerReady(); expect(api.getMediaById).toHaveBeenCalledWith('test'); }); it('Should get state for one media file', function () { api.medias = { main: { state: vg_states_1.VgStates.VG_PLAYING } }; playPause.target = api; var state = playPause.getState(); expect(state).toBe(vg_states_1.VgStates.VG_PLAYING); }); describe('onClick (single and multiple media)', function () { it('should pause if current state is different play', function () { spyOn(api, 'pause').and.callFake(function () { }); api.medias = { main: { state: vg_states_1.VgStates.VG_PLAYING } }; playPause.target = api; playPause.onClick(); expect(api.pause).toHaveBeenCalled(); }); it('should play if current state is pause', function () { spyOn(api, 'play').and.callFake(function () { }); api.medias = { main: { state: vg_states_1.VgStates.VG_PAUSED } }; playPause.target = api; playPause.onClick(); expect(api.play).toHaveBeenCalled(); }); it('should play if current state is ended', function () { spyOn(api, 'play').and.callFake(function () { }); api.medias = { main: { state: vg_states_1.VgStates.VG_ENDED } }; playPause.target = api; playPause.onClick(); expect(api.play).toHaveBeenCalled(); }); }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmctcGxheS1wYXVzZS5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidmctcGxheS1wYXVzZS5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw4QkFBMEIsaUJBQWlCLENBQUMsQ0FBQTtBQUM1Qyx1QkFBb0IsNEJBQTRCLENBQUMsQ0FBQTtBQUVqRCwwQkFBdUIsNkJBQTZCLENBQUMsQ0FBQTtBQUVyRCxRQUFRLENBQUMsbUJBQW1CLEVBQUU7SUFDMUIsSUFBSSxTQUFxQixDQUFDO0lBQzFCLElBQUksR0FBYyxDQUFDO0lBQ25CLElBQUksR0FBUyxDQUFDO0lBRWQsVUFBVSxDQUFDO1FBQ1AsR0FBRyxHQUFHO1lBQ0YsYUFBYSxFQUFFO2dCQUNYLFlBQVksRUFBRSxVQUFDLElBQUk7b0JBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQztnQkFDaEIsQ0FBQzthQUNKO1NBQ0osQ0FBQztRQUVGLEdBQUcsR0FBRyxJQUFJLGNBQUssRUFBRSxDQUFDO1FBQ2xCLEdBQUcsQ0FBQyxNQUFNLEdBQUc7WUFDVCxJQUFJLEVBQUU7Z0JBQ0YsS0FBSyxFQUFFLG9CQUFRLENBQUMsVUFBVTthQUM3QjtZQUNELFNBQVMsRUFBRTtnQkFDUCxLQUFLLEVBQUUsb0JBQVEsQ0FBQyxTQUFTO2FBQzVCO1NBQ0osQ0FBQztRQUdGLFNBQVMsR0FBRyxJQUFJLDJCQUFXLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLGdDQUFnQyxFQUFFO1FBQ2pDLEtBQUssQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztZQUNwQyxNQUFNLENBQUM7Z0JBQ0gsTUFBTSxFQUFFLENBQUM7YUFDWixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxTQUFTLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztRQUN6QixTQUFTLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFMUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxRCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxxQ0FBcUMsRUFBRTtRQUN0QyxHQUFHLENBQUMsTUFBTSxHQUFHO1lBQ1QsSUFBSSxFQUFFO2dCQUNGLEtBQUssRUFBRSxvQkFBUSxDQUFDLFVBQVU7YUFDN0I7U0FDSixDQUFDO1FBRUYsU0FBUyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFFdkIsSUFBSSxLQUFLLEdBQUcsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM1QyxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxxQ0FBcUMsRUFBRTtRQUM1QyxFQUFFLENBQUMsaURBQWlELEVBQUU7WUFDbEQsS0FBSyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGNBQU8sQ0FBQyxDQUFDLENBQUM7WUFFM0MsR0FBRyxDQUFDLE1BQU0sR0FBRztnQkFDVCxJQUFJLEVBQUU7b0JBQ0YsS0FBSyxFQUFFLG9CQUFRLENBQUMsVUFBVTtpQkFDN0I7YUFDSixDQUFDO1lBRUYsU0FBUyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7WUFFdkIsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRXBCLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRTtZQUN4QyxLQUFLLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsY0FBTyxDQUFDLENBQUMsQ0FBQztZQUUxQyxHQUFHLENBQUMsTUFBTSxHQUFHO2dCQUNULElBQUksRUFBRTtvQkFDRixLQUFLLEVBQUUsb0JBQVEsQ0FBQyxTQUFTO2lCQUM1QjthQUNKLENBQUM7WUFFRixTQUFTLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztZQUV2QixTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFcEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHVDQUF1QyxFQUFFO1lBQ3hDLEtBQUssQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxjQUFPLENBQUMsQ0FBQyxDQUFDO1lBRTFDLEdBQUcsQ0FBQyxNQUFNLEdBQUc7Z0JBQ1QsSUFBSSxFQUFFO29CQUNGLEtBQUssRUFBRSxvQkFBUSxDQUFDLFFBQVE7aUJBQzNCO2FBQ0osQ0FBQztZQUVGLFNBQVMsQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1lBRXZCLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUVwQixNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtWZ1BsYXlQYXVzZX0gZnJvbSBcIi4vdmctcGxheS1wYXVzZVwiO1xuaW1wb3J0IHtWZ0FQSX0gZnJvbSBcIi4uLy4uL2NvcmUvc2VydmljZXMvdmctYXBpXCI7XG5pbXBvcnQge0VsZW1lbnRSZWZ9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge1ZnU3RhdGVzfSBmcm9tIFwiLi4vLi4vY29yZS9zdGF0ZXMvdmctc3RhdGVzXCI7XG5cbmRlc2NyaWJlKCdQbGF5L1BhdXNlIEJ1dHRvbicsICgpID0+IHtcbiAgICBsZXQgcGxheVBhdXNlOlZnUGxheVBhdXNlO1xuICAgIGxldCByZWY6RWxlbWVudFJlZjtcbiAgICBsZXQgYXBpOlZnQVBJO1xuXG4gICAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgICAgIHJlZiA9IHtcbiAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQ6IHtcbiAgICAgICAgICAgICAgICBnZXRBdHRyaWJ1dGU6IChuYW1lKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuYW1lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICBhcGkgPSBuZXcgVmdBUEkoKTtcbiAgICAgICAgYXBpLm1lZGlhcyA9IHtcbiAgICAgICAgICAgIG1haW46IHtcbiAgICAgICAgICAgICAgICBzdGF0ZTogVmdTdGF0ZXMuVkdfUExBWUlOR1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNlY29uZGFyeToge1xuICAgICAgICAgICAgICAgIHN0YXRlOiBWZ1N0YXRlcy5WR19QQVVTRURcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuXG4gICAgICAgIHBsYXlQYXVzZSA9IG5ldyBWZ1BsYXlQYXVzZShyZWYsIGFwaSk7XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIGdldCBtZWRpYSBieSBpZCBvbiBpbml0JywgKCkgPT4ge1xuICAgICAgICBzcHlPbihhcGksICdnZXRNZWRpYUJ5SWQnKS5hbmQuY2FsbEZha2UoKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB2b2x1bWU6IDFcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHBsYXlQYXVzZS52Z0ZvciA9ICd0ZXN0JztcbiAgICAgICAgcGxheVBhdXNlLm9uUGxheWVyUmVhZHkoKTtcblxuICAgICAgICBleHBlY3QoYXBpLmdldE1lZGlhQnlJZCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoJ3Rlc3QnKTtcbiAgICB9KTtcblxuICAgIGl0KCdTaG91bGQgZ2V0IHN0YXRlIGZvciBvbmUgbWVkaWEgZmlsZScsICgpID0+IHtcbiAgICAgICAgYXBpLm1lZGlhcyA9IHtcbiAgICAgICAgICAgIG1haW46IHtcbiAgICAgICAgICAgICAgICBzdGF0ZTogVmdTdGF0ZXMuVkdfUExBWUlOR1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHBsYXlQYXVzZS50YXJnZXQgPSBhcGk7XG5cbiAgICAgICAgbGV0IHN0YXRlID0gcGxheVBhdXNlLmdldFN0YXRlKCk7XG5cbiAgICAgICAgZXhwZWN0KHN0YXRlKS50b0JlKFZnU3RhdGVzLlZHX1BMQVlJTkcpO1xuICAgIH0pO1xuXG4gICAgZGVzY3JpYmUoJ29uQ2xpY2sgKHNpbmdsZSBhbmQgbXVsdGlwbGUgbWVkaWEpJywgKCkgPT4ge1xuICAgICAgICBpdCgnc2hvdWxkIHBhdXNlIGlmIGN1cnJlbnQgc3RhdGUgaXMgZGlmZmVyZW50IHBsYXknLCAoKSA9PiB7XG4gICAgICAgICAgICBzcHlPbihhcGksICdwYXVzZScpLmFuZC5jYWxsRmFrZSgoKSA9PiB7fSk7XG5cbiAgICAgICAgICAgIGFwaS5tZWRpYXMgPSB7XG4gICAgICAgICAgICAgICAgbWFpbjoge1xuICAgICAgICAgICAgICAgICAgICBzdGF0ZTogVmdTdGF0ZXMuVkdfUExBWUlOR1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHBsYXlQYXVzZS50YXJnZXQgPSBhcGk7XG5cbiAgICAgICAgICAgIHBsYXlQYXVzZS5vbkNsaWNrKCk7XG5cbiAgICAgICAgICAgIGV4cGVjdChhcGkucGF1c2UpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaXQoJ3Nob3VsZCBwbGF5IGlmIGN1cnJlbnQgc3RhdGUgaXMgcGF1c2UnLCAoKSA9PiB7XG4gICAgICAgICAgICBzcHlPbihhcGksICdwbGF5JykuYW5kLmNhbGxGYWtlKCgpID0+IHt9KTtcblxuICAgICAgICAgICAgYXBpLm1lZGlhcyA9IHtcbiAgICAgICAgICAgICAgICBtYWluOiB7XG4gICAgICAgICAgICAgICAgICAgIHN0YXRlOiBWZ1N0YXRlcy5WR19QQVVTRURcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBwbGF5UGF1c2UudGFyZ2V0ID0gYXBpO1xuXG4gICAgICAgICAgICBwbGF5UGF1c2Uub25DbGljaygpO1xuXG4gICAgICAgICAgICBleHBlY3QoYXBpLnBsYXkpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaXQoJ3Nob3VsZCBwbGF5IGlmIGN1cnJlbnQgc3RhdGUgaXMgZW5kZWQnLCAoKSA9PiB7XG4gICAgICAgICAgICBzcHlPbihhcGksICdwbGF5JykuYW5kLmNhbGxGYWtlKCgpID0+IHt9KTtcblxuICAgICAgICAgICAgYXBpLm1lZGlhcyA9IHtcbiAgICAgICAgICAgICAgICBtYWluOiB7XG4gICAgICAgICAgICAgICAgICAgIHN0YXRlOiBWZ1N0YXRlcy5WR19FTkRFRFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHBsYXlQYXVzZS50YXJnZXQgPSBhcGk7XG5cbiAgICAgICAgICAgIHBsYXlQYXVzZS5vbkNsaWNrKCk7XG5cbiAgICAgICAgICAgIGV4cGVjdChhcGkucGxheSkudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbn0pO1xuXG5pbnRlcmZhY2UgRGVjb3JhdG9ySW52b2NhdGlvbiB7XG4gIHR5cGU6IEZ1bmN0aW9uO1xuICBhcmdzPzogYW55W107XG59XG4iXX0=