diff options
author | Rigel Kent <sendmemail@rigelk.eu> | 2020-12-08 21:16:10 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-08 21:16:10 +0100 |
commit | f2eb23cd87cf32b8fe545178143b5f49e06a58da (patch) | |
tree | af7d59945af70e28fd85047e2c688c59a908f548 /server/tests/api/live | |
parent | c977fd3ec931c059111ddb2b8d6ddbb20b6b99a1 (diff) | |
download | PeerTube-f2eb23cd87cf32b8fe545178143b5f49e06a58da.tar.gz PeerTube-f2eb23cd87cf32b8fe545178143b5f49e06a58da.tar.zst PeerTube-f2eb23cd87cf32b8fe545178143b5f49e06a58da.zip |
emit more specific status codes on video upload (#3423)
- reduce http status codes list to potentially useful codes
- convert more codes to typed ones
- factorize html generator for error responses
Diffstat (limited to 'server/tests/api/live')
-rw-r--r-- | server/tests/api/live/live-save-replay.ts | 33 | ||||
-rw-r--r-- | server/tests/api/live/live.ts | 19 |
2 files changed, 27 insertions, 25 deletions
diff --git a/server/tests/api/live/live-save-replay.ts b/server/tests/api/live/live-save-replay.ts index 3ffa0c093..e300ec345 100644 --- a/server/tests/api/live/live-save-replay.ts +++ b/server/tests/api/live/live-save-replay.ts | |||
@@ -25,6 +25,7 @@ import { | |||
25 | waitJobs, | 25 | waitJobs, |
26 | waitUntilLiveStarts | 26 | waitUntilLiveStarts |
27 | } from '../../../../shared/extra-utils' | 27 | } from '../../../../shared/extra-utils' |
28 | import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes' | ||
28 | 29 | ||
29 | const expect = chai.expect | 30 | const expect = chai.expect |
30 | 31 | ||
@@ -118,7 +119,7 @@ describe('Save replay setting', function () { | |||
118 | 119 | ||
119 | await waitJobs(servers) | 120 | await waitJobs(servers) |
120 | 121 | ||
121 | await checkVideosExist(liveVideoUUID, false, 200) | 122 | await checkVideosExist(liveVideoUUID, false, HttpStatusCode.OK_200) |
122 | await checkVideoState(liveVideoUUID, VideoState.WAITING_FOR_LIVE) | 123 | await checkVideoState(liveVideoUUID, VideoState.WAITING_FOR_LIVE) |
123 | }) | 124 | }) |
124 | 125 | ||
@@ -130,7 +131,7 @@ describe('Save replay setting', function () { | |||
130 | 131 | ||
131 | await waitJobs(servers) | 132 | await waitJobs(servers) |
132 | 133 | ||
133 | await checkVideosExist(liveVideoUUID, true, 200) | 134 | await checkVideosExist(liveVideoUUID, true, HttpStatusCode.OK_200) |
134 | await checkVideoState(liveVideoUUID, VideoState.PUBLISHED) | 135 | await checkVideoState(liveVideoUUID, VideoState.PUBLISHED) |
135 | }) | 136 | }) |
136 | 137 | ||
@@ -142,7 +143,7 @@ describe('Save replay setting', function () { | |||
142 | await waitJobs(servers) | 143 | await waitJobs(servers) |
143 | 144 | ||
144 | // Live still exist, but cannot be played anymore | 145 | // Live still exist, but cannot be played anymore |
145 | await checkVideosExist(liveVideoUUID, false, 200) | 146 | await checkVideosExist(liveVideoUUID, false, HttpStatusCode.OK_200) |
146 | await checkVideoState(liveVideoUUID, VideoState.LIVE_ENDED) | 147 | await checkVideoState(liveVideoUUID, VideoState.LIVE_ENDED) |
147 | 148 | ||
148 | // No resolutions saved since we did not save replay | 149 | // No resolutions saved since we did not save replay |
@@ -158,7 +159,7 @@ describe('Save replay setting', function () { | |||
158 | await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID) | 159 | await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID) |
159 | 160 | ||
160 | await waitJobs(servers) | 161 | await waitJobs(servers) |
161 | await checkVideosExist(liveVideoUUID, true, 200) | 162 | await checkVideosExist(liveVideoUUID, true, HttpStatusCode.OK_200) |
162 | 163 | ||
163 | await Promise.all([ | 164 | await Promise.all([ |
164 | addVideoToBlacklist(servers[0].url, servers[0].accessToken, liveVideoUUID, 'bad live', true), | 165 | addVideoToBlacklist(servers[0].url, servers[0].accessToken, liveVideoUUID, 'bad live', true), |
@@ -169,8 +170,8 @@ describe('Save replay setting', function () { | |||
169 | 170 | ||
170 | await checkVideosExist(liveVideoUUID, false) | 171 | await checkVideosExist(liveVideoUUID, false) |
171 | 172 | ||
172 | await getVideo(servers[0].url, liveVideoUUID, 401) | 173 | await getVideo(servers[0].url, liveVideoUUID, HttpStatusCode.UNAUTHORIZED_401) |
173 | await getVideo(servers[1].url, liveVideoUUID, 404) | 174 | await getVideo(servers[1].url, liveVideoUUID, HttpStatusCode.NOT_FOUND_404) |
174 | 175 | ||
175 | await checkLiveCleanup(servers[0], liveVideoUUID, []) | 176 | await checkLiveCleanup(servers[0], liveVideoUUID, []) |
176 | }) | 177 | }) |
@@ -184,7 +185,7 @@ describe('Save replay setting', function () { | |||
184 | await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID) | 185 | await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID) |
185 | 186 | ||
186 | await waitJobs(servers) | 187 | await waitJobs(servers) |
187 | await checkVideosExist(liveVideoUUID, true, 200) | 188 | await checkVideosExist(liveVideoUUID, true, HttpStatusCode.OK_200) |
188 | 189 | ||
189 | await Promise.all([ | 190 | await Promise.all([ |
190 | testFfmpegStreamError(ffmpegCommand, true), | 191 | testFfmpegStreamError(ffmpegCommand, true), |
@@ -193,7 +194,7 @@ describe('Save replay setting', function () { | |||
193 | 194 | ||
194 | await waitJobs(servers) | 195 | await waitJobs(servers) |
195 | 196 | ||
196 | await checkVideosExist(liveVideoUUID, false, 404) | 197 | await checkVideosExist(liveVideoUUID, false, HttpStatusCode.NOT_FOUND_404) |
197 | await checkLiveCleanup(servers[0], liveVideoUUID, []) | 198 | await checkLiveCleanup(servers[0], liveVideoUUID, []) |
198 | }) | 199 | }) |
199 | }) | 200 | }) |
@@ -207,7 +208,7 @@ describe('Save replay setting', function () { | |||
207 | 208 | ||
208 | await waitJobs(servers) | 209 | await waitJobs(servers) |
209 | 210 | ||
210 | await checkVideosExist(liveVideoUUID, false, 200) | 211 | await checkVideosExist(liveVideoUUID, false, HttpStatusCode.OK_200) |
211 | await checkVideoState(liveVideoUUID, VideoState.WAITING_FOR_LIVE) | 212 | await checkVideoState(liveVideoUUID, VideoState.WAITING_FOR_LIVE) |
212 | }) | 213 | }) |
213 | 214 | ||
@@ -219,7 +220,7 @@ describe('Save replay setting', function () { | |||
219 | 220 | ||
220 | await waitJobs(servers) | 221 | await waitJobs(servers) |
221 | 222 | ||
222 | await checkVideosExist(liveVideoUUID, true, 200) | 223 | await checkVideosExist(liveVideoUUID, true, HttpStatusCode.OK_200) |
223 | await checkVideoState(liveVideoUUID, VideoState.PUBLISHED) | 224 | await checkVideoState(liveVideoUUID, VideoState.PUBLISHED) |
224 | }) | 225 | }) |
225 | 226 | ||
@@ -231,7 +232,7 @@ describe('Save replay setting', function () { | |||
231 | await waitJobs(servers) | 232 | await waitJobs(servers) |
232 | 233 | ||
233 | // Live has been transcoded | 234 | // Live has been transcoded |
234 | await checkVideosExist(liveVideoUUID, true, 200) | 235 | await checkVideosExist(liveVideoUUID, true, HttpStatusCode.OK_200) |
235 | await checkVideoState(liveVideoUUID, VideoState.PUBLISHED) | 236 | await checkVideoState(liveVideoUUID, VideoState.PUBLISHED) |
236 | }) | 237 | }) |
237 | 238 | ||
@@ -261,7 +262,7 @@ describe('Save replay setting', function () { | |||
261 | await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID) | 262 | await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID) |
262 | 263 | ||
263 | await waitJobs(servers) | 264 | await waitJobs(servers) |
264 | await checkVideosExist(liveVideoUUID, true, 200) | 265 | await checkVideosExist(liveVideoUUID, true, HttpStatusCode.OK_200) |
265 | 266 | ||
266 | await Promise.all([ | 267 | await Promise.all([ |
267 | addVideoToBlacklist(servers[0].url, servers[0].accessToken, liveVideoUUID, 'bad live', true), | 268 | addVideoToBlacklist(servers[0].url, servers[0].accessToken, liveVideoUUID, 'bad live', true), |
@@ -272,8 +273,8 @@ describe('Save replay setting', function () { | |||
272 | 273 | ||
273 | await checkVideosExist(liveVideoUUID, false) | 274 | await checkVideosExist(liveVideoUUID, false) |
274 | 275 | ||
275 | await getVideo(servers[0].url, liveVideoUUID, 401) | 276 | await getVideo(servers[0].url, liveVideoUUID, HttpStatusCode.UNAUTHORIZED_401) |
276 | await getVideo(servers[1].url, liveVideoUUID, 404) | 277 | await getVideo(servers[1].url, liveVideoUUID, HttpStatusCode.NOT_FOUND_404) |
277 | 278 | ||
278 | await checkLiveCleanup(servers[0], liveVideoUUID, [ 720 ]) | 279 | await checkLiveCleanup(servers[0], liveVideoUUID, [ 720 ]) |
279 | }) | 280 | }) |
@@ -287,7 +288,7 @@ describe('Save replay setting', function () { | |||
287 | await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID) | 288 | await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID) |
288 | 289 | ||
289 | await waitJobs(servers) | 290 | await waitJobs(servers) |
290 | await checkVideosExist(liveVideoUUID, true, 200) | 291 | await checkVideosExist(liveVideoUUID, true, HttpStatusCode.OK_200) |
291 | 292 | ||
292 | await Promise.all([ | 293 | await Promise.all([ |
293 | removeVideo(servers[0].url, servers[0].accessToken, liveVideoUUID), | 294 | removeVideo(servers[0].url, servers[0].accessToken, liveVideoUUID), |
@@ -296,7 +297,7 @@ describe('Save replay setting', function () { | |||
296 | 297 | ||
297 | await waitJobs(servers) | 298 | await waitJobs(servers) |
298 | 299 | ||
299 | await checkVideosExist(liveVideoUUID, false, 404) | 300 | await checkVideosExist(liveVideoUUID, false, HttpStatusCode.NOT_FOUND_404) |
300 | await checkLiveCleanup(servers[0], liveVideoUUID, []) | 301 | await checkLiveCleanup(servers[0], liveVideoUUID, []) |
301 | }) | 302 | }) |
302 | }) | 303 | }) |
diff --git a/server/tests/api/live/live.ts b/server/tests/api/live/live.ts index d784650b5..fdfc6105f 100644 --- a/server/tests/api/live/live.ts +++ b/server/tests/api/live/live.ts | |||
@@ -44,6 +44,7 @@ import { | |||
44 | waitUntilLiveStarts, | 44 | waitUntilLiveStarts, |
45 | waitUntilLog | 45 | waitUntilLog |
46 | } from '../../../../shared/extra-utils' | 46 | } from '../../../../shared/extra-utils' |
47 | import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes' | ||
47 | 48 | ||
48 | const expect = chai.expect | 49 | const expect = chai.expect |
49 | 50 | ||
@@ -164,8 +165,8 @@ describe('Test live', function () { | |||
164 | expect(video.privacy.id).to.equal(VideoPrivacy.UNLISTED) | 165 | expect(video.privacy.id).to.equal(VideoPrivacy.UNLISTED) |
165 | expect(video.nsfw).to.be.true | 166 | expect(video.nsfw).to.be.true |
166 | 167 | ||
167 | await makeRawRequest(server.url + video.thumbnailPath, 200) | 168 | await makeRawRequest(server.url + video.thumbnailPath, HttpStatusCode.OK_200) |
168 | await makeRawRequest(server.url + video.previewPath, 200) | 169 | await makeRawRequest(server.url + video.previewPath, HttpStatusCode.OK_200) |
169 | } | 170 | } |
170 | }) | 171 | }) |
171 | 172 | ||
@@ -179,7 +180,7 @@ describe('Test live', function () { | |||
179 | }) | 180 | }) |
180 | 181 | ||
181 | it('Should not be able to update a live of another server', async function () { | 182 | it('Should not be able to update a live of another server', async function () { |
182 | await updateLive(servers[1].url, servers[1].accessToken, liveVideoUUID, { saveReplay: false }, 403) | 183 | await updateLive(servers[1].url, servers[1].accessToken, liveVideoUUID, { saveReplay: false }, HttpStatusCode.FORBIDDEN_403) |
183 | }) | 184 | }) |
184 | 185 | ||
185 | it('Should update the live', async function () { | 186 | it('Should update the live', async function () { |
@@ -215,8 +216,8 @@ describe('Test live', function () { | |||
215 | 216 | ||
216 | it('Should have the live deleted', async function () { | 217 | it('Should have the live deleted', async function () { |
217 | for (const server of servers) { | 218 | for (const server of servers) { |
218 | await getVideo(server.url, liveVideoUUID, 404) | 219 | await getVideo(server.url, liveVideoUUID, HttpStatusCode.NOT_FOUND_404) |
219 | await getLive(server.url, server.accessToken, liveVideoUUID, 404) | 220 | await getLive(server.url, server.accessToken, liveVideoUUID, HttpStatusCode.NOT_FOUND_404) |
220 | } | 221 | } |
221 | }) | 222 | }) |
222 | }) | 223 | }) |
@@ -430,8 +431,8 @@ describe('Test live', function () { | |||
430 | expect(video.files).to.have.lengthOf(0) | 431 | expect(video.files).to.have.lengthOf(0) |
431 | 432 | ||
432 | const hlsPlaylist = video.streamingPlaylists.find(s => s.type === VideoStreamingPlaylistType.HLS) | 433 | const hlsPlaylist = video.streamingPlaylists.find(s => s.type === VideoStreamingPlaylistType.HLS) |
433 | await makeRawRequest(hlsPlaylist.playlistUrl, 200) | 434 | await makeRawRequest(hlsPlaylist.playlistUrl, HttpStatusCode.OK_200) |
434 | await makeRawRequest(hlsPlaylist.segmentsSha256Url, 200) | 435 | await makeRawRequest(hlsPlaylist.segmentsSha256Url, HttpStatusCode.OK_200) |
435 | 436 | ||
436 | expect(hlsPlaylist.files).to.have.lengthOf(resolutions.length) | 437 | expect(hlsPlaylist.files).to.have.lengthOf(resolutions.length) |
437 | 438 | ||
@@ -455,8 +456,8 @@ describe('Test live', function () { | |||
455 | 456 | ||
456 | expect(probe.format.bit_rate).to.be.below(bitrateLimits[videoStream.height]) | 457 | expect(probe.format.bit_rate).to.be.below(bitrateLimits[videoStream.height]) |
457 | 458 | ||
458 | await makeRawRequest(file.torrentUrl, 200) | 459 | await makeRawRequest(file.torrentUrl, HttpStatusCode.OK_200) |
459 | await makeRawRequest(file.fileUrl, 200) | 460 | await makeRawRequest(file.fileUrl, HttpStatusCode.OK_200) |
460 | } | 461 | } |
461 | } | 462 | } |
462 | }) | 463 | }) |