diff options
Diffstat (limited to 'client/e2e/src')
-rw-r--r-- | client/e2e/src/po/video-watch.po.ts | 13 | ||||
-rw-r--r-- | client/e2e/src/videos.e2e-spec.ts | 6 |
2 files changed, 10 insertions, 9 deletions
diff --git a/client/e2e/src/po/video-watch.po.ts b/client/e2e/src/po/video-watch.po.ts index bcfceefbc..35ec773af 100644 --- a/client/e2e/src/po/video-watch.po.ts +++ b/client/e2e/src/po/video-watch.po.ts | |||
@@ -1,5 +1,5 @@ | |||
1 | import { browser, by, element, ElementFinder, ExpectedConditions } from 'protractor' | 1 | import { browser, by, element, ElementFinder, ExpectedConditions } from 'protractor' |
2 | import { browserSleep } from '../utils' | 2 | import { browserSleep, isIOS, isMobileDevice } from '../utils' |
3 | 3 | ||
4 | export class VideoWatchPage { | 4 | export class VideoWatchPage { |
5 | async goOnVideosList (isMobileDevice: boolean, isSafari: boolean) { | 5 | async goOnVideosList (isMobileDevice: boolean, isSafari: boolean) { |
@@ -48,22 +48,23 @@ export class VideoWatchPage { | |||
48 | return this.getVideoNameElement().getText() | 48 | return this.getVideoNameElement().getText() |
49 | } | 49 | } |
50 | 50 | ||
51 | async playAndPauseVideo (isAutoplay: boolean, isMobileDevice: boolean) { | 51 | async playAndPauseVideo (isAutoplay: boolean) { |
52 | if (isAutoplay === false) { | 52 | // Autoplay is disabled on iOS |
53 | if (isAutoplay === false || await isIOS()) { | ||
53 | const playButton = element(by.css('.vjs-big-play-button')) | 54 | const playButton = element(by.css('.vjs-big-play-button')) |
54 | await browser.wait(browser.ExpectedConditions.elementToBeClickable(playButton)) | 55 | await browser.wait(browser.ExpectedConditions.elementToBeClickable(playButton)) |
55 | await playButton.click() | 56 | await playButton.click() |
56 | } | 57 | } |
57 | 58 | ||
58 | await browserSleep(1000) | 59 | await browserSleep(2000) |
59 | await browser.wait(browser.ExpectedConditions.invisibilityOf(element(by.css('.vjs-loading-spinner')))) | 60 | await browser.wait(browser.ExpectedConditions.invisibilityOf(element(by.css('.vjs-loading-spinner')))) |
60 | 61 | ||
61 | const videojsEl = element(by.css('div.video-js')) | 62 | const videojsEl = element(by.css('div.video-js')) |
62 | await browser.wait(browser.ExpectedConditions.elementToBeClickable(videojsEl)) | 63 | await browser.wait(browser.ExpectedConditions.elementToBeClickable(videojsEl)) |
63 | 64 | ||
64 | // On Android, we need to click twice on "play" (BrowserStack particularity) | 65 | // On Android, we need to click twice on "play" (BrowserStack particularity) |
65 | if (isMobileDevice) { | 66 | if (await isMobileDevice()) { |
66 | await browserSleep(3000) | 67 | await browserSleep(5000) |
67 | 68 | ||
68 | await videojsEl.click() | 69 | await videojsEl.click() |
69 | } | 70 | } |
diff --git a/client/e2e/src/videos.e2e-spec.ts b/client/e2e/src/videos.e2e-spec.ts index 0cba8331f..bbc5f7da3 100644 --- a/client/e2e/src/videos.e2e-spec.ts +++ b/client/e2e/src/videos.e2e-spec.ts | |||
@@ -99,7 +99,7 @@ describe('Videos workflow', () => { | |||
99 | it('Should play the video', async () => { | 99 | it('Should play the video', async () => { |
100 | videoWatchUrl = await browser.getCurrentUrl() | 100 | videoWatchUrl = await browser.getCurrentUrl() |
101 | 101 | ||
102 | await videoWatchPage.playAndPauseVideo(true, await isMobileDevice()) | 102 | await videoWatchPage.playAndPauseVideo(true) |
103 | expect(videoWatchPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2) | 103 | expect(videoWatchPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2) |
104 | }) | 104 | }) |
105 | 105 | ||
@@ -108,7 +108,7 @@ describe('Videos workflow', () => { | |||
108 | 108 | ||
109 | await videoWatchPage.goOnAssociatedEmbed() | 109 | await videoWatchPage.goOnAssociatedEmbed() |
110 | 110 | ||
111 | await videoWatchPage.playAndPauseVideo(false, await isMobileDevice()) | 111 | await videoWatchPage.playAndPauseVideo(false) |
112 | expect(videoWatchPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2) | 112 | expect(videoWatchPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2) |
113 | 113 | ||
114 | await browser.waitForAngularEnabled(true) | 114 | await browser.waitForAngularEnabled(true) |
@@ -119,7 +119,7 @@ describe('Videos workflow', () => { | |||
119 | 119 | ||
120 | await videoWatchPage.goOnP2PMediaLoaderEmbed() | 120 | await videoWatchPage.goOnP2PMediaLoaderEmbed() |
121 | 121 | ||
122 | await videoWatchPage.playAndPauseVideo(false, await isMobileDevice()) | 122 | await videoWatchPage.playAndPauseVideo(false) |
123 | expect(videoWatchPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2) | 123 | expect(videoWatchPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2) |
124 | 124 | ||
125 | await browser.waitForAngularEnabled(true) | 125 | await browser.waitForAngularEnabled(true) |