diff options
author | Chocobozzz <me@florianbigard.com> | 2021-07-15 10:02:54 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2021-07-20 15:27:18 +0200 |
commit | d23dd9fbfc4d26026352c10f81d2795ceaf2908a (patch) | |
tree | da82286d423c5e834a1ee2dcd5970076b8263cf1 /server/tests/cli | |
parent | 7926c5f9b3ffcabb1ffb0dcfa5e48b8e0b88fbc0 (diff) | |
download | PeerTube-d23dd9fbfc4d26026352c10f81d2795ceaf2908a.tar.gz PeerTube-d23dd9fbfc4d26026352c10f81d2795ceaf2908a.tar.zst PeerTube-d23dd9fbfc4d26026352c10f81d2795ceaf2908a.zip |
Introduce videos command
Diffstat (limited to 'server/tests/cli')
-rw-r--r-- | server/tests/cli/create-import-video-file-job.ts | 52 | ||||
-rw-r--r-- | server/tests/cli/create-transcoding-job.ts | 76 | ||||
-rw-r--r-- | server/tests/cli/optimize-old-videos.ts | 47 | ||||
-rw-r--r-- | server/tests/cli/peertube.ts | 41 | ||||
-rw-r--r-- | server/tests/cli/prune-storage.ts | 5 | ||||
-rw-r--r-- | server/tests/cli/regenerate-thumbnails.ts | 33 | ||||
-rw-r--r-- | server/tests/cli/update-host.ts | 29 |
7 files changed, 116 insertions, 167 deletions
diff --git a/server/tests/cli/create-import-video-file-job.ts b/server/tests/cli/create-import-video-file-job.ts index 8a23a94de..b1d9da242 100644 --- a/server/tests/cli/create-import-video-file-job.ts +++ b/server/tests/cli/create-import-video-file-job.ts | |||
@@ -2,19 +2,8 @@ | |||
2 | 2 | ||
3 | import 'mocha' | 3 | import 'mocha' |
4 | import * as chai from 'chai' | 4 | import * as chai from 'chai' |
5 | import { VideoFile } from '@shared/models/videos/video-file.model' | 5 | import { cleanupTests, doubleFollow, flushAndRunMultipleServers, ServerInfo, setAccessTokensToServers, waitJobs } from '@shared/extra-utils' |
6 | import { | 6 | import { VideoFile } from '@shared/models' |
7 | cleanupTests, | ||
8 | doubleFollow, | ||
9 | flushAndRunMultipleServers, | ||
10 | getVideo, | ||
11 | getVideosList, | ||
12 | ServerInfo, | ||
13 | setAccessTokensToServers, | ||
14 | uploadVideo | ||
15 | } from '../../../shared/extra-utils' | ||
16 | import { waitJobs } from '../../../shared/extra-utils/server/jobs' | ||
17 | import { VideoDetails } from '../../../shared/models/videos' | ||
18 | 7 | ||
19 | const expect = chai.expect | 8 | const expect = chai.expect |
20 | 9 | ||
@@ -45,10 +34,15 @@ describe('Test create import video jobs', function () { | |||
45 | await doubleFollow(servers[0], servers[1]) | 34 | await doubleFollow(servers[0], servers[1]) |
46 | 35 | ||
47 | // Upload two videos for our needs | 36 | // Upload two videos for our needs |
48 | const res1 = await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video1' }) | 37 | { |
49 | video1UUID = res1.body.video.uuid | 38 | const { uuid } = await servers[0].videosCommand.upload({ attributes: { name: 'video1' } }) |
50 | const res2 = await uploadVideo(servers[1].url, servers[1].accessToken, { name: 'video2' }) | 39 | video1UUID = uuid |
51 | video2UUID = res2.body.video.uuid | 40 | } |
41 | |||
42 | { | ||
43 | const { uuid } = await servers[1].videosCommand.upload({ attributes: { name: 'video2' } }) | ||
44 | video2UUID = uuid | ||
45 | } | ||
52 | 46 | ||
53 | // Transcoding | 47 | // Transcoding |
54 | await waitJobs(servers) | 48 | await waitJobs(servers) |
@@ -61,14 +55,14 @@ describe('Test create import video jobs', function () { | |||
61 | await waitJobs(servers) | 55 | await waitJobs(servers) |
62 | 56 | ||
63 | for (const server of servers) { | 57 | for (const server of servers) { |
64 | const { data: videos } = (await getVideosList(server.url)).body | 58 | const { data: videos } = await server.videosCommand.list() |
65 | expect(videos).to.have.lengthOf(2) | 59 | expect(videos).to.have.lengthOf(2) |
66 | 60 | ||
67 | const video = videos.find(({ uuid }) => uuid === video1UUID) | 61 | const video = videos.find(({ uuid }) => uuid === video1UUID) |
68 | const videoDetail: VideoDetails = (await getVideo(server.url, video.uuid)).body | 62 | const videoDetails = await server.videosCommand.get({ id: video.uuid }) |
69 | 63 | ||
70 | expect(videoDetail.files).to.have.lengthOf(2) | 64 | expect(videoDetails.files).to.have.lengthOf(2) |
71 | const [ originalVideo, transcodedVideo ] = videoDetail.files | 65 | const [ originalVideo, transcodedVideo ] = videoDetails.files |
72 | assertVideoProperties(originalVideo, 720, 'webm', 218910) | 66 | assertVideoProperties(originalVideo, 720, 'webm', 218910) |
73 | assertVideoProperties(transcodedVideo, 480, 'webm', 69217) | 67 | assertVideoProperties(transcodedVideo, 480, 'webm', 69217) |
74 | } | 68 | } |
@@ -81,14 +75,14 @@ describe('Test create import video jobs', function () { | |||
81 | await waitJobs(servers) | 75 | await waitJobs(servers) |
82 | 76 | ||
83 | for (const server of servers) { | 77 | for (const server of servers) { |
84 | const { data: videos } = (await getVideosList(server.url)).body | 78 | const { data: videos } = await server.videosCommand.list() |
85 | expect(videos).to.have.lengthOf(2) | 79 | expect(videos).to.have.lengthOf(2) |
86 | 80 | ||
87 | const video = videos.find(({ uuid }) => uuid === video2UUID) | 81 | const video = videos.find(({ uuid }) => uuid === video2UUID) |
88 | const videoDetail: VideoDetails = (await getVideo(server.url, video.uuid)).body | 82 | const videoDetails = await server.videosCommand.get({ id: video.uuid }) |
89 | 83 | ||
90 | expect(videoDetail.files).to.have.lengthOf(4) | 84 | expect(videoDetails.files).to.have.lengthOf(4) |
91 | const [ originalVideo, transcodedVideo420, transcodedVideo320, transcodedVideo240 ] = videoDetail.files | 85 | const [ originalVideo, transcodedVideo420, transcodedVideo320, transcodedVideo240 ] = videoDetails.files |
92 | assertVideoProperties(originalVideo, 720, 'ogv', 140849) | 86 | assertVideoProperties(originalVideo, 720, 'ogv', 140849) |
93 | assertVideoProperties(transcodedVideo420, 480, 'mp4') | 87 | assertVideoProperties(transcodedVideo420, 480, 'mp4') |
94 | assertVideoProperties(transcodedVideo320, 360, 'mp4') | 88 | assertVideoProperties(transcodedVideo320, 360, 'mp4') |
@@ -103,14 +97,14 @@ describe('Test create import video jobs', function () { | |||
103 | await waitJobs(servers) | 97 | await waitJobs(servers) |
104 | 98 | ||
105 | for (const server of servers) { | 99 | for (const server of servers) { |
106 | const { data: videos } = (await getVideosList(server.url)).body | 100 | const { data: videos } = await server.videosCommand.list() |
107 | expect(videos).to.have.lengthOf(2) | 101 | expect(videos).to.have.lengthOf(2) |
108 | 102 | ||
109 | const video = videos.find(({ uuid }) => uuid === video1UUID) | 103 | const video = videos.find(({ uuid }) => uuid === video1UUID) |
110 | const videoDetail: VideoDetails = (await getVideo(server.url, video.uuid)).body | 104 | const videoDetails = await server.videosCommand.get({ id: video.uuid }) |
111 | 105 | ||
112 | expect(videoDetail.files).to.have.lengthOf(2) | 106 | expect(videoDetails.files).to.have.lengthOf(2) |
113 | const [ video720, video480 ] = videoDetail.files | 107 | const [ video720, video480 ] = videoDetails.files |
114 | assertVideoProperties(video720, 720, 'webm', 942961) | 108 | assertVideoProperties(video720, 720, 'webm', 942961) |
115 | assertVideoProperties(video480, 480, 'webm', 69217) | 109 | assertVideoProperties(video480, 480, 'webm', 69217) |
116 | } | 110 | } |
diff --git a/server/tests/cli/create-transcoding-job.ts b/server/tests/cli/create-transcoding-job.ts index e3211882d..f629306e6 100644 --- a/server/tests/cli/create-transcoding-job.ts +++ b/server/tests/cli/create-transcoding-job.ts | |||
@@ -6,14 +6,10 @@ import { | |||
6 | cleanupTests, | 6 | cleanupTests, |
7 | doubleFollow, | 7 | doubleFollow, |
8 | flushAndRunMultipleServers, | 8 | flushAndRunMultipleServers, |
9 | getVideo, | ||
10 | getVideosList, | ||
11 | ServerInfo, | 9 | ServerInfo, |
12 | setAccessTokensToServers, | 10 | setAccessTokensToServers, |
13 | uploadVideo | 11 | waitJobs |
14 | } from '../../../shared/extra-utils' | 12 | } from '../../../shared/extra-utils' |
15 | import { waitJobs } from '../../../shared/extra-utils/server/jobs' | ||
16 | import { VideoDetails } from '../../../shared/models/videos' | ||
17 | 13 | ||
18 | const expect = chai.expect | 14 | const expect = chai.expect |
19 | 15 | ||
@@ -51,8 +47,8 @@ describe('Test create transcoding jobs', function () { | |||
51 | await doubleFollow(servers[0], servers[1]) | 47 | await doubleFollow(servers[0], servers[1]) |
52 | 48 | ||
53 | for (let i = 1; i <= 5; i++) { | 49 | for (let i = 1; i <= 5; i++) { |
54 | const res = await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video' + i }) | 50 | const { uuid } = await servers[0].videosCommand.upload({ attributes: { name: 'video' + i } }) |
55 | videosUUID.push(res.body.video.uuid) | 51 | videosUUID.push(uuid) |
56 | } | 52 | } |
57 | 53 | ||
58 | await waitJobs(servers) | 54 | await waitJobs(servers) |
@@ -62,13 +58,11 @@ describe('Test create transcoding jobs', function () { | |||
62 | this.timeout(30000) | 58 | this.timeout(30000) |
63 | 59 | ||
64 | for (const server of servers) { | 60 | for (const server of servers) { |
65 | const res = await getVideosList(server.url) | 61 | const { data } = await server.videosCommand.list() |
66 | const videos = res.body.data | 62 | expect(data).to.have.lengthOf(videosUUID.length) |
67 | expect(videos).to.have.lengthOf(videosUUID.length) | ||
68 | 63 | ||
69 | for (const video of videos) { | 64 | for (const video of data) { |
70 | const res2 = await getVideo(server.url, video.uuid) | 65 | const videoDetail = await server.videosCommand.get({ id: video.uuid }) |
71 | const videoDetail: VideoDetails = res2.body | ||
72 | expect(videoDetail.files).to.have.lengthOf(1) | 66 | expect(videoDetail.files).to.have.lengthOf(1) |
73 | expect(videoDetail.streamingPlaylists).to.have.lengthOf(0) | 67 | expect(videoDetail.streamingPlaylists).to.have.lengthOf(0) |
74 | } | 68 | } |
@@ -82,14 +76,12 @@ describe('Test create transcoding jobs', function () { | |||
82 | await waitJobs(servers) | 76 | await waitJobs(servers) |
83 | 77 | ||
84 | for (const server of servers) { | 78 | for (const server of servers) { |
85 | const res = await getVideosList(server.url) | 79 | const { data } = await server.videosCommand.list() |
86 | const videos = res.body.data | ||
87 | 80 | ||
88 | let infoHashes: { [id: number]: string } | 81 | let infoHashes: { [id: number]: string } |
89 | 82 | ||
90 | for (const video of videos) { | 83 | for (const video of data) { |
91 | const res2 = await getVideo(server.url, video.uuid) | 84 | const videoDetail = await server.videosCommand.get({ id: video.uuid }) |
92 | const videoDetail: VideoDetails = res2.body | ||
93 | 85 | ||
94 | if (video.uuid === videosUUID[1]) { | 86 | if (video.uuid === videosUUID[1]) { |
95 | expect(videoDetail.files).to.have.lengthOf(4) | 87 | expect(videoDetail.files).to.have.lengthOf(4) |
@@ -123,18 +115,16 @@ describe('Test create transcoding jobs', function () { | |||
123 | await waitJobs(servers) | 115 | await waitJobs(servers) |
124 | 116 | ||
125 | for (const server of servers) { | 117 | for (const server of servers) { |
126 | const res = await getVideosList(server.url) | 118 | const { data } = await server.videosCommand.list() |
127 | const videos = res.body.data | 119 | expect(data).to.have.lengthOf(videosUUID.length) |
128 | expect(videos).to.have.lengthOf(videosUUID.length) | ||
129 | 120 | ||
130 | const res2 = await getVideo(server.url, videosUUID[0]) | 121 | const videoDetails = await server.videosCommand.get({ id: videosUUID[0] }) |
131 | const videoDetail: VideoDetails = res2.body | ||
132 | 122 | ||
133 | expect(videoDetail.files).to.have.lengthOf(2) | 123 | expect(videoDetails.files).to.have.lengthOf(2) |
134 | expect(videoDetail.files[0].resolution.id).to.equal(720) | 124 | expect(videoDetails.files[0].resolution.id).to.equal(720) |
135 | expect(videoDetail.files[1].resolution.id).to.equal(480) | 125 | expect(videoDetails.files[1].resolution.id).to.equal(480) |
136 | 126 | ||
137 | expect(videoDetail.streamingPlaylists).to.have.lengthOf(0) | 127 | expect(videoDetails.streamingPlaylists).to.have.lengthOf(0) |
138 | } | 128 | } |
139 | }) | 129 | }) |
140 | 130 | ||
@@ -146,13 +136,12 @@ describe('Test create transcoding jobs', function () { | |||
146 | await waitJobs(servers) | 136 | await waitJobs(servers) |
147 | 137 | ||
148 | for (const server of servers) { | 138 | for (const server of servers) { |
149 | const res = await getVideo(server.url, videosUUID[2]) | 139 | const videoDetails = await server.videosCommand.get({ id: videosUUID[2] }) |
150 | const videoDetail: VideoDetails = res.body | ||
151 | 140 | ||
152 | expect(videoDetail.files).to.have.lengthOf(1) | 141 | expect(videoDetails.files).to.have.lengthOf(1) |
153 | expect(videoDetail.streamingPlaylists).to.have.lengthOf(1) | 142 | expect(videoDetails.streamingPlaylists).to.have.lengthOf(1) |
154 | 143 | ||
155 | const files = videoDetail.streamingPlaylists[0].files | 144 | const files = videoDetails.streamingPlaylists[0].files |
156 | expect(files).to.have.lengthOf(1) | 145 | expect(files).to.have.lengthOf(1) |
157 | expect(files[0].resolution.id).to.equal(480) | 146 | expect(files[0].resolution.id).to.equal(480) |
158 | } | 147 | } |
@@ -166,10 +155,9 @@ describe('Test create transcoding jobs', function () { | |||
166 | await waitJobs(servers) | 155 | await waitJobs(servers) |
167 | 156 | ||
168 | for (const server of servers) { | 157 | for (const server of servers) { |
169 | const res = await getVideo(server.url, videosUUID[2]) | 158 | const videoDetails = await server.videosCommand.get({ id: videosUUID[2] }) |
170 | const videoDetail: VideoDetails = res.body | ||
171 | 159 | ||
172 | const files = videoDetail.streamingPlaylists[0].files | 160 | const files = videoDetails.streamingPlaylists[0].files |
173 | expect(files).to.have.lengthOf(1) | 161 | expect(files).to.have.lengthOf(1) |
174 | expect(files[0].resolution.id).to.equal(480) | 162 | expect(files[0].resolution.id).to.equal(480) |
175 | } | 163 | } |
@@ -183,13 +171,12 @@ describe('Test create transcoding jobs', function () { | |||
183 | await waitJobs(servers) | 171 | await waitJobs(servers) |
184 | 172 | ||
185 | for (const server of servers) { | 173 | for (const server of servers) { |
186 | const res = await getVideo(server.url, videosUUID[3]) | 174 | const videoDetails = await server.videosCommand.get({ id: videosUUID[3] }) |
187 | const videoDetail: VideoDetails = res.body | ||
188 | 175 | ||
189 | expect(videoDetail.files).to.have.lengthOf(1) | 176 | expect(videoDetails.files).to.have.lengthOf(1) |
190 | expect(videoDetail.streamingPlaylists).to.have.lengthOf(1) | 177 | expect(videoDetails.streamingPlaylists).to.have.lengthOf(1) |
191 | 178 | ||
192 | const files = videoDetail.streamingPlaylists[0].files | 179 | const files = videoDetails.streamingPlaylists[0].files |
193 | expect(files).to.have.lengthOf(4) | 180 | expect(files).to.have.lengthOf(4) |
194 | } | 181 | } |
195 | }) | 182 | }) |
@@ -205,12 +192,11 @@ describe('Test create transcoding jobs', function () { | |||
205 | await waitJobs(servers) | 192 | await waitJobs(servers) |
206 | 193 | ||
207 | for (const server of servers) { | 194 | for (const server of servers) { |
208 | const res = await getVideo(server.url, videosUUID[4]) | 195 | const videoDetails = await server.videosCommand.get({ id: videosUUID[4] }) |
209 | const videoDetail: VideoDetails = res.body | ||
210 | 196 | ||
211 | expect(videoDetail.files).to.have.lengthOf(4) | 197 | expect(videoDetails.files).to.have.lengthOf(4) |
212 | expect(videoDetail.streamingPlaylists).to.have.lengthOf(1) | 198 | expect(videoDetails.streamingPlaylists).to.have.lengthOf(1) |
213 | expect(videoDetail.streamingPlaylists[0].files).to.have.lengthOf(4) | 199 | expect(videoDetails.streamingPlaylists[0].files).to.have.lengthOf(4) |
214 | } | 200 | } |
215 | }) | 201 | }) |
216 | 202 | ||
diff --git a/server/tests/cli/optimize-old-videos.ts b/server/tests/cli/optimize-old-videos.ts index e369a3305..ef8603a33 100644 --- a/server/tests/cli/optimize-old-videos.ts +++ b/server/tests/cli/optimize-old-videos.ts | |||
@@ -8,16 +8,12 @@ import { | |||
8 | doubleFollow, | 8 | doubleFollow, |
9 | flushAndRunMultipleServers, | 9 | flushAndRunMultipleServers, |
10 | generateHighBitrateVideo, | 10 | generateHighBitrateVideo, |
11 | getVideo, | ||
12 | getVideosList, | ||
13 | ServerInfo, | 11 | ServerInfo, |
14 | setAccessTokensToServers, | 12 | setAccessTokensToServers, |
15 | uploadVideo, | 13 | wait, |
16 | viewVideo, | 14 | waitJobs |
17 | wait | 15 | } from '@shared/extra-utils' |
18 | } from '../../../shared/extra-utils' | 16 | import { getMaxBitrate, VideoResolution } from '@shared/models' |
19 | import { waitJobs } from '../../../shared/extra-utils/server/jobs' | ||
20 | import { getMaxBitrate, Video, VideoDetails, VideoResolution } from '../../../shared/models/videos' | ||
21 | import { getVideoFileBitrate, getVideoFileFPS, getVideoFileResolution } from '../../helpers/ffprobe-utils' | 17 | import { getVideoFileBitrate, getVideoFileFPS, getVideoFileResolution } from '../../helpers/ffprobe-utils' |
22 | import { VIDEO_TRANSCODING_FPS } from '../../initializers/constants' | 18 | import { VIDEO_TRANSCODING_FPS } from '../../initializers/constants' |
23 | 19 | ||
@@ -45,8 +41,8 @@ describe('Test optimize old videos', function () { | |||
45 | } | 41 | } |
46 | 42 | ||
47 | // Upload two videos for our needs | 43 | // Upload two videos for our needs |
48 | await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video1', fixture: tempFixturePath }) | 44 | await servers[0].videosCommand.upload({ attributes: { name: 'video1', fixture: tempFixturePath } }) |
49 | await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video2', fixture: tempFixturePath }) | 45 | await servers[0].videosCommand.upload({ attributes: { name: 'video2', fixture: tempFixturePath } }) |
50 | 46 | ||
51 | await waitJobs(servers) | 47 | await waitJobs(servers) |
52 | }) | 48 | }) |
@@ -55,14 +51,12 @@ describe('Test optimize old videos', function () { | |||
55 | this.timeout(30000) | 51 | this.timeout(30000) |
56 | 52 | ||
57 | for (const server of servers) { | 53 | for (const server of servers) { |
58 | const res = await getVideosList(server.url) | 54 | const { data } = await server.videosCommand.list() |
59 | const videos = res.body.data | 55 | expect(data).to.have.lengthOf(2) |
60 | expect(videos).to.have.lengthOf(2) | 56 | |
61 | 57 | for (const video of data) { | |
62 | for (const video of videos) { | 58 | const videoDetails = await server.videosCommand.get({ id: video.uuid }) |
63 | const res2 = await getVideo(server.url, video.uuid) | 59 | expect(videoDetails.files).to.have.lengthOf(1) |
64 | const videoDetail: VideoDetails = res2.body | ||
65 | expect(videoDetail.files).to.have.lengthOf(1) | ||
66 | } | 60 | } |
67 | } | 61 | } |
68 | }) | 62 | }) |
@@ -74,24 +68,21 @@ describe('Test optimize old videos', function () { | |||
74 | await waitJobs(servers) | 68 | await waitJobs(servers) |
75 | 69 | ||
76 | for (const server of servers) { | 70 | for (const server of servers) { |
77 | const res = await getVideosList(server.url) | 71 | const { data } = await server.videosCommand.list() |
78 | const videos: Video[] = res.body.data | 72 | expect(data).to.have.lengthOf(2) |
79 | |||
80 | expect(videos).to.have.lengthOf(2) | ||
81 | 73 | ||
82 | for (const video of videos) { | 74 | for (const video of data) { |
83 | await viewVideo(server.url, video.uuid) | 75 | await server.videosCommand.view({ id: video.uuid }) |
84 | 76 | ||
85 | // Refresh video | 77 | // Refresh video |
86 | await waitJobs(servers) | 78 | await waitJobs(servers) |
87 | await wait(5000) | 79 | await wait(5000) |
88 | await waitJobs(servers) | 80 | await waitJobs(servers) |
89 | 81 | ||
90 | const res2 = await getVideo(server.url, video.uuid) | 82 | const videoDetails = await server.videosCommand.get({ id: video.uuid }) |
91 | const videosDetails: VideoDetails = res2.body | ||
92 | 83 | ||
93 | expect(videosDetails.files).to.have.lengthOf(1) | 84 | expect(videoDetails.files).to.have.lengthOf(1) |
94 | const file = videosDetails.files[0] | 85 | const file = videoDetails.files[0] |
95 | 86 | ||
96 | expect(file.size).to.be.below(8000000) | 87 | expect(file.size).to.be.below(8000000) |
97 | 88 | ||
diff --git a/server/tests/cli/peertube.ts b/server/tests/cli/peertube.ts index a0c149ac0..fe5f63191 100644 --- a/server/tests/cli/peertube.ts +++ b/server/tests/cli/peertube.ts | |||
@@ -2,7 +2,6 @@ | |||
2 | 2 | ||
3 | import 'mocha' | 3 | import 'mocha' |
4 | import { expect } from 'chai' | 4 | import { expect } from 'chai' |
5 | import { Video, VideoDetails } from '../../../shared' | ||
6 | import { | 5 | import { |
7 | areHttpImportTestsDisabled, | 6 | areHttpImportTestsDisabled, |
8 | buildAbsoluteFixturePath, | 7 | buildAbsoluteFixturePath, |
@@ -10,15 +9,10 @@ import { | |||
10 | CLICommand, | 9 | CLICommand, |
11 | doubleFollow, | 10 | doubleFollow, |
12 | flushAndRunServer, | 11 | flushAndRunServer, |
13 | getLocalIdByUUID, | ||
14 | getVideo, | ||
15 | getVideosList, | ||
16 | ImportsCommand, | 12 | ImportsCommand, |
17 | removeVideo, | ||
18 | ServerInfo, | 13 | ServerInfo, |
19 | setAccessTokensToServers, | 14 | setAccessTokensToServers, |
20 | testHelloWorldRegisteredSettings, | 15 | testHelloWorldRegisteredSettings, |
21 | uploadVideoAndGetId, | ||
22 | waitJobs | 16 | waitJobs |
23 | } from '../../../shared/extra-utils' | 17 | } from '../../../shared/extra-utils' |
24 | 18 | ||
@@ -109,14 +103,10 @@ describe('Test CLI wrapper', function () { | |||
109 | }) | 103 | }) |
110 | 104 | ||
111 | it('Should have the video uploaded', async function () { | 105 | it('Should have the video uploaded', async function () { |
112 | const res = await getVideosList(server.url) | 106 | const { total, data } = await server.videosCommand.list() |
113 | 107 | expect(total).to.equal(1) | |
114 | expect(res.body.total).to.equal(1) | ||
115 | |||
116 | const videos: Video[] = res.body.data | ||
117 | |||
118 | const video: VideoDetails = (await getVideo(server.url, videos[0].uuid)).body | ||
119 | 108 | ||
109 | const video = await server.videosCommand.get({ id: data[0].uuid }) | ||
120 | expect(video.name).to.equal('test upload') | 110 | expect(video.name).to.equal('test upload') |
121 | expect(video.support).to.equal('support_text') | 111 | expect(video.support).to.equal('support_text') |
122 | expect(video.channel.name).to.equal('user_channel') | 112 | expect(video.channel.name).to.equal('user_channel') |
@@ -138,21 +128,19 @@ describe('Test CLI wrapper', function () { | |||
138 | 128 | ||
139 | await waitJobs([ server ]) | 129 | await waitJobs([ server ]) |
140 | 130 | ||
141 | const res = await getVideosList(server.url) | 131 | const { total, data } = await server.videosCommand.list() |
142 | 132 | expect(total).to.equal(2) | |
143 | expect(res.body.total).to.equal(2) | ||
144 | 133 | ||
145 | const videos: Video[] = res.body.data | 134 | const video = data.find(v => v.name === 'small video - youtube') |
146 | const video = videos.find(v => v.name === 'small video - youtube') | ||
147 | expect(video).to.not.be.undefined | 135 | expect(video).to.not.be.undefined |
148 | 136 | ||
149 | const videoDetails: VideoDetails = (await getVideo(server.url, video.id)).body | 137 | const videoDetails = await server.videosCommand.get({ id: video.id }) |
150 | expect(videoDetails.channel.name).to.equal('user_channel') | 138 | expect(videoDetails.channel.name).to.equal('user_channel') |
151 | expect(videoDetails.support).to.equal('super support text') | 139 | expect(videoDetails.support).to.equal('super support text') |
152 | expect(videoDetails.nsfw).to.be.false | 140 | expect(videoDetails.nsfw).to.be.false |
153 | 141 | ||
154 | // So we can reimport it | 142 | // So we can reimport it |
155 | await removeVideo(server.url, userAccessToken, video.id) | 143 | await server.videosCommand.remove({ token: userAccessToken, id: video.id }) |
156 | }) | 144 | }) |
157 | 145 | ||
158 | it('Should import and override some imported attributes', async function () { | 146 | it('Should import and override some imported attributes', async function () { |
@@ -167,14 +155,13 @@ describe('Test CLI wrapper', function () { | |||
167 | await waitJobs([ server ]) | 155 | await waitJobs([ server ]) |
168 | 156 | ||
169 | { | 157 | { |
170 | const res = await getVideosList(server.url) | 158 | const { total, data } = await server.videosCommand.list() |
171 | expect(res.body.total).to.equal(2) | 159 | expect(total).to.equal(2) |
172 | 160 | ||
173 | const videos: Video[] = res.body.data | 161 | const video = data.find(v => v.name === 'toto') |
174 | const video = videos.find(v => v.name === 'toto') | ||
175 | expect(video).to.not.be.undefined | 162 | expect(video).to.not.be.undefined |
176 | 163 | ||
177 | const videoDetails: VideoDetails = (await getVideo(server.url, video.id)).body | 164 | const videoDetails = await server.videosCommand.get({ id: video.id }) |
178 | expect(videoDetails.channel.name).to.equal('user_channel') | 165 | expect(videoDetails.channel.name).to.equal('user_channel') |
179 | expect(videoDetails.support).to.equal('support') | 166 | expect(videoDetails.support).to.equal('support') |
180 | expect(videoDetails.nsfw).to.be.true | 167 | expect(videoDetails.nsfw).to.be.true |
@@ -238,10 +225,10 @@ describe('Test CLI wrapper', function () { | |||
238 | servers = [ server, anotherServer ] | 225 | servers = [ server, anotherServer ] |
239 | await waitJobs(servers) | 226 | await waitJobs(servers) |
240 | 227 | ||
241 | const uuid = (await uploadVideoAndGetId({ server: anotherServer, videoName: 'super video' })).uuid | 228 | const { uuid } = await anotherServer.videosCommand.quickUpload({ name: 'super video' }) |
242 | await waitJobs(servers) | 229 | await waitJobs(servers) |
243 | 230 | ||
244 | video1Server2 = await getLocalIdByUUID(server.url, uuid) | 231 | video1Server2 = await server.videosCommand.getId({ uuid }) |
245 | }) | 232 | }) |
246 | 233 | ||
247 | it('Should add a redundancy', async function () { | 234 | it('Should add a redundancy', async function () { |
diff --git a/server/tests/cli/prune-storage.ts b/server/tests/cli/prune-storage.ts index b45049964..a4556312b 100644 --- a/server/tests/cli/prune-storage.ts +++ b/server/tests/cli/prune-storage.ts | |||
@@ -16,7 +16,6 @@ import { | |||
16 | ServerInfo, | 16 | ServerInfo, |
17 | setAccessTokensToServers, | 17 | setAccessTokensToServers, |
18 | setDefaultVideoChannel, | 18 | setDefaultVideoChannel, |
19 | uploadVideo, | ||
20 | wait, | 19 | wait, |
21 | waitJobs | 20 | waitJobs |
22 | } from '@shared/extra-utils' | 21 | } from '@shared/extra-utils' |
@@ -69,8 +68,8 @@ describe('Test prune storage scripts', function () { | |||
69 | await setDefaultVideoChannel(servers) | 68 | await setDefaultVideoChannel(servers) |
70 | 69 | ||
71 | for (const server of servers) { | 70 | for (const server of servers) { |
72 | await uploadVideo(server.url, server.accessToken, { name: 'video 1' }) | 71 | await server.videosCommand.upload({ attributes: { name: 'video 1' } }) |
73 | await uploadVideo(server.url, server.accessToken, { name: 'video 2' }) | 72 | await server.videosCommand.upload({ attributes: { name: 'video 2' } }) |
74 | 73 | ||
75 | await server.usersCommand.updateMyAvatar({ fixture: 'avatar.png' }) | 74 | await server.usersCommand.updateMyAvatar({ fixture: 'avatar.png' }) |
76 | 75 | ||
diff --git a/server/tests/cli/regenerate-thumbnails.ts b/server/tests/cli/regenerate-thumbnails.ts index 68a4711b6..d59520783 100644 --- a/server/tests/cli/regenerate-thumbnails.ts +++ b/server/tests/cli/regenerate-thumbnails.ts | |||
@@ -2,29 +2,30 @@ import 'mocha' | |||
2 | import { expect } from 'chai' | 2 | import { expect } from 'chai' |
3 | import { writeFile } from 'fs-extra' | 3 | import { writeFile } from 'fs-extra' |
4 | import { basename, join } from 'path' | 4 | import { basename, join } from 'path' |
5 | import { Video, VideoDetails } from '@shared/models' | 5 | import { HttpStatusCode } from '@shared/core-utils' |
6 | import { Video } from '@shared/models' | ||
6 | import { | 7 | import { |
7 | cleanupTests, | 8 | cleanupTests, |
8 | doubleFollow, | 9 | doubleFollow, |
9 | flushAndRunMultipleServers, | 10 | flushAndRunMultipleServers, |
10 | getVideo, | ||
11 | makeRawRequest, | 11 | makeRawRequest, |
12 | ServerInfo, | 12 | ServerInfo, |
13 | setAccessTokensToServers, | 13 | setAccessTokensToServers, |
14 | uploadVideoAndGetId, | ||
15 | waitJobs | 14 | waitJobs |
16 | } from '../../../shared/extra-utils' | 15 | } from '../../../shared/extra-utils' |
17 | import { HttpStatusCode } from '@shared/core-utils' | ||
18 | 16 | ||
19 | async function testThumbnail (server: ServerInfo, videoId: number | string) { | 17 | async function testThumbnail (server: ServerInfo, videoId: number | string) { |
20 | const res = await getVideo(server.url, videoId) | 18 | const video = await server.videosCommand.get({ id: videoId }) |
21 | const video: VideoDetails = res.body | ||
22 | 19 | ||
23 | const res1 = await makeRawRequest(join(server.url, video.thumbnailPath), HttpStatusCode.OK_200) | 20 | const requests = [ |
24 | expect(res1.body).to.not.have.lengthOf(0) | 21 | makeRawRequest(join(server.url, video.thumbnailPath), HttpStatusCode.OK_200), |
22 | makeRawRequest(join(server.url, video.thumbnailPath), HttpStatusCode.OK_200) | ||
23 | ] | ||
25 | 24 | ||
26 | const res2 = await makeRawRequest(join(server.url, video.thumbnailPath), HttpStatusCode.OK_200) | 25 | for (const req of requests) { |
27 | expect(res2.body).to.not.have.lengthOf(0) | 26 | const res = await req |
27 | expect(res.body).to.not.have.lengthOf(0) | ||
28 | } | ||
28 | } | 29 | } |
29 | 30 | ||
30 | describe('Test regenerate thumbnails script', function () { | 31 | describe('Test regenerate thumbnails script', function () { |
@@ -46,20 +47,20 @@ describe('Test regenerate thumbnails script', function () { | |||
46 | await doubleFollow(servers[0], servers[1]) | 47 | await doubleFollow(servers[0], servers[1]) |
47 | 48 | ||
48 | { | 49 | { |
49 | const videoUUID1 = (await uploadVideoAndGetId({ server: servers[0], videoName: 'video 1' })).uuid | 50 | const videoUUID1 = (await servers[0].videosCommand.quickUpload({ name: 'video 1' })).uuid |
50 | video1 = await (getVideo(servers[0].url, videoUUID1).then(res => res.body)) | 51 | video1 = await servers[0].videosCommand.get({ id: videoUUID1 }) |
51 | 52 | ||
52 | thumbnail1Path = join(servers[0].serversCommand.buildDirectory('thumbnails'), basename(video1.thumbnailPath)) | 53 | thumbnail1Path = join(servers[0].serversCommand.buildDirectory('thumbnails'), basename(video1.thumbnailPath)) |
53 | 54 | ||
54 | const videoUUID2 = (await uploadVideoAndGetId({ server: servers[0], videoName: 'video 2' })).uuid | 55 | const videoUUID2 = (await servers[0].videosCommand.quickUpload({ name: 'video 2' })).uuid |
55 | video2 = await (getVideo(servers[0].url, videoUUID2).then(res => res.body)) | 56 | video2 = await servers[0].videosCommand.get({ id: videoUUID2 }) |
56 | } | 57 | } |
57 | 58 | ||
58 | { | 59 | { |
59 | const videoUUID = (await uploadVideoAndGetId({ server: servers[1], videoName: 'video 3' })).uuid | 60 | const videoUUID = (await servers[1].videosCommand.quickUpload({ name: 'video 3' })).uuid |
60 | await waitJobs(servers) | 61 | await waitJobs(servers) |
61 | 62 | ||
62 | remoteVideo = await (getVideo(servers[0].url, videoUUID).then(res => res.body)) | 63 | remoteVideo = await servers[0].videosCommand.get({ id: videoUUID }) |
63 | 64 | ||
64 | thumbnailRemotePath = join(servers[0].serversCommand.buildDirectory('thumbnails'), basename(remoteVideo.thumbnailPath)) | 65 | thumbnailRemotePath = join(servers[0].serversCommand.buildDirectory('thumbnails'), basename(remoteVideo.thumbnailPath)) |
65 | } | 66 | } |
diff --git a/server/tests/cli/update-host.ts b/server/tests/cli/update-host.ts index b857fcf28..d90b4a64d 100644 --- a/server/tests/cli/update-host.ts +++ b/server/tests/cli/update-host.ts | |||
@@ -5,18 +5,14 @@ import { expect } from 'chai' | |||
5 | import { | 5 | import { |
6 | cleanupTests, | 6 | cleanupTests, |
7 | flushAndRunServer, | 7 | flushAndRunServer, |
8 | getVideo, | ||
9 | getVideosList, | ||
10 | killallServers, | 8 | killallServers, |
11 | makeActivityPubGetRequest, | 9 | makeActivityPubGetRequest, |
12 | parseTorrentVideo, | 10 | parseTorrentVideo, |
13 | reRunServer, | 11 | reRunServer, |
14 | ServerInfo, | 12 | ServerInfo, |
15 | setAccessTokensToServers, | 13 | setAccessTokensToServers, |
16 | uploadVideo, | ||
17 | waitJobs | 14 | waitJobs |
18 | } from '@shared/extra-utils' | 15 | } from '@shared/extra-utils' |
19 | import { VideoDetails } from '@shared/models' | ||
20 | 16 | ||
21 | describe('Test update host scripts', function () { | 17 | describe('Test update host scripts', function () { |
22 | let server: ServerInfo | 18 | let server: ServerInfo |
@@ -34,10 +30,8 @@ describe('Test update host scripts', function () { | |||
34 | await setAccessTokensToServers([ server ]) | 30 | await setAccessTokensToServers([ server ]) |
35 | 31 | ||
36 | // Upload two videos for our needs | 32 | // Upload two videos for our needs |
37 | const videoAttributes = {} | 33 | const { uuid: video1UUID } = await server.videosCommand.upload() |
38 | const resVideo1 = await uploadVideo(server.url, server.accessToken, videoAttributes) | 34 | await server.videosCommand.upload() |
39 | const video1UUID = resVideo1.body.video.uuid | ||
40 | await uploadVideo(server.url, server.accessToken, videoAttributes) | ||
41 | 35 | ||
42 | // Create a user | 36 | // Create a user |
43 | await server.usersCommand.create({ username: 'toto', password: 'coucou' }) | 37 | await server.usersCommand.create({ username: 'toto', password: 'coucou' }) |
@@ -68,16 +62,15 @@ describe('Test update host scripts', function () { | |||
68 | }) | 62 | }) |
69 | 63 | ||
70 | it('Should have updated videos url', async function () { | 64 | it('Should have updated videos url', async function () { |
71 | const res = await getVideosList(server.url) | 65 | const { total, data } = await server.videosCommand.list() |
72 | expect(res.body.total).to.equal(2) | 66 | expect(total).to.equal(2) |
73 | 67 | ||
74 | for (const video of res.body.data) { | 68 | for (const video of data) { |
75 | const { body } = await makeActivityPubGetRequest(server.url, '/videos/watch/' + video.uuid) | 69 | const { body } = await makeActivityPubGetRequest(server.url, '/videos/watch/' + video.uuid) |
76 | 70 | ||
77 | expect(body.id).to.equal('http://localhost:9002/videos/watch/' + video.uuid) | 71 | expect(body.id).to.equal('http://localhost:9002/videos/watch/' + video.uuid) |
78 | 72 | ||
79 | const res = await getVideo(server.url, video.uuid) | 73 | const videoDetails = await server.videosCommand.get({ id: video.uuid }) |
80 | const videoDetails: VideoDetails = res.body | ||
81 | 74 | ||
82 | expect(videoDetails.trackerUrls[0]).to.include(server.host) | 75 | expect(videoDetails.trackerUrls[0]).to.include(server.host) |
83 | expect(videoDetails.streamingPlaylists[0].playlistUrl).to.include(server.host) | 76 | expect(videoDetails.streamingPlaylists[0].playlistUrl).to.include(server.host) |
@@ -111,13 +104,11 @@ describe('Test update host scripts', function () { | |||
111 | it('Should have updated torrent hosts', async function () { | 104 | it('Should have updated torrent hosts', async function () { |
112 | this.timeout(30000) | 105 | this.timeout(30000) |
113 | 106 | ||
114 | const res = await getVideosList(server.url) | 107 | const { data } = await server.videosCommand.list() |
115 | const videos = res.body.data | 108 | expect(data).to.have.lengthOf(2) |
116 | expect(videos).to.have.lengthOf(2) | ||
117 | 109 | ||
118 | for (const video of videos) { | 110 | for (const video of data) { |
119 | const res2 = await getVideo(server.url, video.id) | 111 | const videoDetails = await server.videosCommand.get({ id: video.id }) |
120 | const videoDetails: VideoDetails = res2.body | ||
121 | 112 | ||
122 | expect(videoDetails.files).to.have.lengthOf(4) | 113 | expect(videoDetails.files).to.have.lengthOf(4) |
123 | 114 | ||