]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/e2e/src/videos.e2e-spec.ts
Move video alert in a dedicated component
[github/Chocobozzz/PeerTube.git] / client / e2e / src / videos.e2e-spec.ts
index d8af1885f7c094b6e36de532baec3f3b3c6f1cc0..fc816d1bf677b26e96f27b146447e6f0793aa630 100644 (file)
@@ -1,5 +1,4 @@
 import { browser } from 'protractor'
-import { AppPage } from './po/app.po'
 import { LoginPage } from './po/login.po'
 import { MyAccountPage } from './po/my-account'
 import { PlayerPage } from './po/player.po'
@@ -23,7 +22,6 @@ describe('Videos workflow', () => {
   let videoUpdatePage: VideoUpdatePage
   let myAccountPage: MyAccountPage
   let loginPage: LoginPage
-  let appPage: AppPage
   let playerPage: PlayerPage
 
   let videoName = new Date().getTime() + ' video'
@@ -37,13 +35,12 @@ describe('Videos workflow', () => {
     videoUpdatePage = new VideoUpdatePage()
     myAccountPage = new MyAccountPage()
     loginPage = new LoginPage()
-    appPage = new AppPage()
     playerPage = new PlayerPage()
 
     if (await isIOS()) {
       // iOS does not seem to work with protractor
       // https://github.com/angular/protractor/issues/2840
-      browser.ignoreSynchronization = true
+      browser.waitForAngularEnabled(false)
 
       console.log('iOS detected')
     } else if (await isMobileDevice()) {
@@ -66,12 +63,6 @@ describe('Videos workflow', () => {
     return loginPage.loginAsRootUser()
   })
 
-  it('Should close the welcome modal', async () => {
-    if (await skipIfUploadNotSupported()) return
-
-    await appPage.closeWelcomeModal()
-  })
-
   it('Should upload a video', async () => {
     if (await skipIfUploadNotSupported()) return
 
@@ -94,7 +85,7 @@ describe('Videos workflow', () => {
     let videoNameToExcept = videoName
 
     if (await isMobileDevice() || await isSafari()) {
-      await browser.get('https://peertube2.cpy.re/videos/watch/122d093a-1ede-43bd-bd34-59d2931ffc5e')
+      await browser.get('https://peertube2.cpy.re/w/122d093a-1ede-43bd-bd34-59d2931ffc5e')
       videoNameToExcept = 'E2E tests'
     } else {
       await videoWatchPage.clickOnVideo(videoName)
@@ -111,6 +102,7 @@ describe('Videos workflow', () => {
   })
 
   it('Should watch the associated embed video', async () => {
+    const oldValue = await browser.waitForAngularEnabled()
     await browser.waitForAngularEnabled(false)
 
     await videoWatchPage.goOnAssociatedEmbed()
@@ -118,10 +110,11 @@ describe('Videos workflow', () => {
     await playerPage.playAndPauseVideo(false)
     expect(playerPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2)
 
-    await browser.waitForAngularEnabled(true)
+    await browser.waitForAngularEnabled(oldValue)
   })
 
   it('Should watch the p2p media loader embed video', async () => {
+    const oldValue = await browser.waitForAngularEnabled()
     await browser.waitForAngularEnabled(false)
 
     await videoWatchPage.goOnP2PMediaLoaderEmbed()
@@ -129,7 +122,7 @@ describe('Videos workflow', () => {
     await playerPage.playAndPauseVideo(false)
     expect(playerPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2)
 
-    await browser.waitForAngularEnabled(true)
+    await browser.waitForAngularEnabled(oldValue)
   })
 
   it('Should update the video', async () => {
@@ -156,6 +149,7 @@ describe('Videos workflow', () => {
     await videoWatchPage.createPlaylist(playlistName)
 
     await videoWatchPage.saveToPlaylist(playlistName)
+    await browser.sleep(5000)
 
     await videoUploadPage.navigateTo()
 
@@ -185,11 +179,12 @@ describe('Videos workflow', () => {
 
     await myAccountPage.playPlaylist()
 
+    const oldValue = await browser.waitForAngularEnabled()
     await browser.waitForAngularEnabled(false)
 
     await videoWatchPage.waitUntilVideoName(video2Name, 20000 * 1000)
 
-    await browser.waitForAngularEnabled(true)
+    await browser.waitForAngularEnabled(oldValue)
   })
 
   it('Should watch the webtorrent playlist in the embed', async () => {
@@ -198,10 +193,15 @@ describe('Videos workflow', () => {
     const accessToken = await browser.executeScript(`return window.localStorage.getItem('access_token');`)
     const refreshToken = await browser.executeScript(`return window.localStorage.getItem('refresh_token');`)
 
+    const oldValue = await browser.waitForAngularEnabled()
     await browser.waitForAngularEnabled(false)
 
     await myAccountPage.goOnAssociatedPlaylistEmbed()
 
+    await playerPage.waitUntilPlayerWrapper()
+
+    console.log('Will set %s and %s tokens in local storage.', accessToken, refreshToken)
+
     await browser.executeScript(`window.localStorage.setItem('access_token', '${accessToken}');`)
     await browser.executeScript(`window.localStorage.setItem('refresh_token', '${refreshToken}');`)
     await browser.executeScript(`window.localStorage.setItem('token_type', 'Bearer');`)
@@ -212,10 +212,11 @@ describe('Videos workflow', () => {
 
     await playerPage.waitUntilPlaylistInfo('2/2')
 
-    await browser.waitForAngularEnabled(true)
+    await browser.waitForAngularEnabled(oldValue)
   })
 
   it('Should watch the HLS playlist in the embed', async () => {
+    const oldValue = await browser.waitForAngularEnabled()
     await browser.waitForAngularEnabled(false)
 
     await videoWatchPage.goOnP2PMediaLoaderPlaylistEmbed()
@@ -224,7 +225,7 @@ describe('Videos workflow', () => {
 
     await playerPage.waitUntilPlaylistInfo('2/2')
 
-    await browser.waitForAngularEnabled(true)
+    await browser.waitForAngularEnabled(oldValue)
   })
 
   it('Should delete the video 2', async () => {