]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tests/utils/videos/video-channels.ts
Fixing #626 with ffmpeg's low default audio bitrate
[github/Chocobozzz/PeerTube.git] / server / tests / utils / videos / video-channels.ts
index 062ca8f4d099786e723bbcf8fba940097dab58e5..3ca39469c5b7b88e2db27ae1e051d917497efa7d 100644 (file)
@@ -1,12 +1,9 @@
 import * as request from 'supertest'
-
-type VideoChannelAttributes = {
-  name?: string
-  description?: string
-}
+import { VideoChannelCreate, VideoChannelUpdate } from '../../../../shared/models/videos'
+import { updateAvatarRequest } from '../index'
 
 function getVideoChannelsList (url: string, start: number, count: number, sort?: string) {
-  const path = '/api/v1/videos/channels'
+  const path = '/api/v1/video-channels'
 
   const req = request(url)
     .get(path)
@@ -20,8 +17,8 @@ function getVideoChannelsList (url: string, start: number, count: number, sort?:
             .expect('Content-Type', /json/)
 }
 
-function getAccountVideoChannelsList (url: string, accountId: number | string, specialStatus = 200) {
-  const path = '/api/v1/videos/accounts/' + accountId + '/channels'
+function getAccountVideoChannelsList (url: string, accountName: string, specialStatus = 200) {
+  const path = '/api/v1/accounts/' + accountName + '/video-channels'
 
   return request(url)
     .get(path)
@@ -30,13 +27,19 @@ function getAccountVideoChannelsList (url: string, accountId: number | string, s
     .expect('Content-Type', /json/)
 }
 
-function addVideoChannel (url: string, token: string, videoChannelAttributesArg: VideoChannelAttributes, expectedStatus = 204) {
-  const path = '/api/v1/videos/channels'
+function addVideoChannel (
+  url: string,
+  token: string,
+  videoChannelAttributesArg: VideoChannelCreate,
+  expectedStatus = 200
+) {
+  const path = '/api/v1/video-channels/'
 
   // Default attributes
   let attributes = {
-    name: 'my super video channel',
-    description: 'my super channel description'
+    displayName: 'my super video channel',
+    description: 'my super channel description',
+    support: 'my super channel support'
   }
   attributes = Object.assign(attributes, videoChannelAttributesArg)
 
@@ -48,12 +51,19 @@ function addVideoChannel (url: string, token: string, videoChannelAttributesArg:
     .expect(expectedStatus)
 }
 
-function updateVideoChannel (url: string, token: string, channelId: number, attributes: VideoChannelAttributes, expectedStatus = 204) {
+function updateVideoChannel (
+  url: string,
+  token: string,
+  channelId: number | string,
+  attributes: VideoChannelUpdate,
+  expectedStatus = 204
+) {
   const body = {}
-  const path = '/api/v1/videos/channels/' + channelId
+  const path = '/api/v1/video-channels/' + channelId
 
-  if (attributes.name) body['name'] = attributes.name
+  if (attributes.displayName) body['displayName'] = attributes.displayName
   if (attributes.description) body['description'] = attributes.description
+  if (attributes.support) body['support'] = attributes.support
 
   return request(url)
     .put(path)
@@ -63,18 +73,18 @@ function updateVideoChannel (url: string, token: string, channelId: number, attr
     .expect(expectedStatus)
 }
 
-function deleteVideoChannel (url: string, token: string, channelId: number, expectedStatus = 204) {
-  const path = '/api/v1/videos/channels/'
+function deleteVideoChannel (url: string, token: string, channelId: number | string, expectedStatus = 204) {
+  const path = '/api/v1/video-channels/' + channelId
 
   return request(url)
-    .delete(path + channelId)
+    .delete(path)
     .set('Accept', 'application/json')
     .set('Authorization', 'Bearer ' + token)
     .expect(expectedStatus)
 }
 
-function getVideoChannel (url: string, channelId: number) {
-  const path = '/api/v1/videos/channels/' + channelId
+function getVideoChannel (url: string, channelId: number | string) {
+  const path = '/api/v1/video-channels/' + channelId
 
   return request(url)
     .get(path)
@@ -83,9 +93,22 @@ function getVideoChannel (url: string, channelId: number) {
     .expect('Content-Type', /json/)
 }
 
+function updateVideoChannelAvatar (options: {
+  url: string,
+  accessToken: string,
+  fixture: string,
+  videoChannelId: string | number
+}) {
+
+  const path = '/api/v1/video-channels/' + options.videoChannelId + '/avatar/pick'
+
+  return updateAvatarRequest(Object.assign(options, { path }))
+}
+
 // ---------------------------------------------------------------------------
 
 export {
+  updateVideoChannelAvatar,
   getVideoChannelsList,
   getAccountVideoChannelsList,
   addVideoChannel,