1 import { VideoWatchPage } from './po/video-watch.po'
2 import { VideoUploadPage } from './po/video-upload.po'
3 import { LoginPage } from './po/login.po'
4 import { browser } from 'protractor'
6 describe('Videos workflow', () => {
7 let videoWatchPage: VideoWatchPage
8 let pageUploadPage: VideoUploadPage
9 let loginPage: LoginPage
10 const videoName = new Date().getTime() + ' video'
13 videoWatchPage = new VideoWatchPage()
14 pageUploadPage = new VideoUploadPage()
15 loginPage = new LoginPage()
18 it('Should log in', () => {
19 return loginPage.loginAsRootUser()
22 it('Should upload a video', async () => {
23 pageUploadPage.navigateTo()
25 await pageUploadPage.uploadVideo()
26 return pageUploadPage.validSecondUploadStep(videoName)
29 it('Should list the video', async () => {
30 await videoWatchPage.goOnRecentlyAdded()
32 const videoNames = videoWatchPage.getVideosListName()
33 expect(videoNames).toContain(videoName)
36 it('Should go on video watch page', async () => {
37 await videoWatchPage.clickOnVideo(videoName)
39 return videoWatchPage.waitWatchVideoName(videoName)
42 it('Should play the video', async () => {
43 await videoWatchPage.pauseVideo(2500)
44 expect(videoWatchPage.getWatchVideoPlayerCurrentTime()).toBeGreaterThanOrEqual(2)