]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tests/utils/videos/video-channels.ts
API: Add ability to update video channel avatar
[github/Chocobozzz/PeerTube.git] / server / tests / utils / videos / video-channels.ts
index 978e21b199186fe04d8354d9ecf7afe9a447781c..3ca39469c5b7b88e2db27ae1e051d917497efa7d 100644 (file)
@@ -1,10 +1,6 @@
 import * as request from 'supertest'
-
-type VideoChannelAttributes = {
-  name?: string
-  description?: string
-  support?: 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/video-channels'
@@ -21,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/accounts/' + accountId + '/video-channels'
+function getAccountVideoChannelsList (url: string, accountName: string, specialStatus = 200) {
+  const path = '/api/v1/accounts/' + accountName + '/video-channels'
 
   return request(url)
     .get(path)
@@ -34,14 +30,14 @@ function getAccountVideoChannelsList (url: string, accountId: number | string, s
 function addVideoChannel (
   url: string,
   token: string,
-  videoChannelAttributesArg: VideoChannelAttributes,
+  videoChannelAttributesArg: VideoChannelCreate,
   expectedStatus = 200
 ) {
   const path = '/api/v1/video-channels/'
 
   // Default attributes
   let attributes = {
-    name: 'my super video channel',
+    displayName: 'my super video channel',
     description: 'my super channel description',
     support: 'my super channel support'
   }
@@ -59,13 +55,13 @@ function updateVideoChannel (
   url: string,
   token: string,
   channelId: number | string,
-  attributes: VideoChannelAttributes,
+  attributes: VideoChannelUpdate,
   expectedStatus = 204
 ) {
   const body = {}
   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
 
@@ -97,9 +93,22 @@ function getVideoChannel (url: string, channelId: number | string) {
     .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,