]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tests/api/users/users.ts
shared/ typescript types dir server-commands
[github/Chocobozzz/PeerTube.git] / server / tests / api / users / users.ts
index 318ff832a03600bf203b8cb4ea4b3b5a3171a5fc..fc44a6acd38fbd0e246eac319b29cd2b528657ae 100644 (file)
@@ -11,7 +11,7 @@ import {
   setAccessTokensToServers,
   testImage,
   waitJobs
-} from '@shared/extra-utils'
+} from '@shared/server-commands'
 import { AbuseState, HttpStatusCode, OAuth2ErrorCode, UserAdminFlag, UserRole, Video, VideoPlaylistType } from '@shared/models'
 
 const expect = chai.expect
@@ -318,6 +318,8 @@ describe('Test users', function () {
         fixture: 'video_short.webm'
       }
       await server.videos.upload({ token: userToken, attributes })
+
+      await server.channels.create({ token: userToken, attributes: { name: 'other_channel' } })
     })
 
     it('Should have video quota updated', async function () {
@@ -340,6 +342,29 @@ describe('Test users', function () {
       expect(video.previewPath).to.not.be.null
     })
 
+    it('Should be able to filter by channel in my videos', async function () {
+      const myInfo = await server.users.getMyInfo({ token: userToken })
+      const mainChannel = myInfo.videoChannels.find(c => c.name !== 'other_channel')
+      const otherChannel = myInfo.videoChannels.find(c => c.name === 'other_channel')
+
+      {
+        const { total, data } = await server.videos.listMyVideos({ token: userToken, channelId: mainChannel.id })
+        expect(total).to.equal(1)
+        expect(data).to.have.lengthOf(1)
+
+        const video: Video = data[0]
+        expect(video.name).to.equal('super user video')
+        expect(video.thumbnailPath).to.not.be.null
+        expect(video.previewPath).to.not.be.null
+      }
+
+      {
+        const { total, data } = await server.videos.listMyVideos({ token: userToken, channelId: otherChannel.id })
+        expect(total).to.equal(0)
+        expect(data).to.have.lengthOf(0)
+      }
+    })
+
     it('Should be able to search in my videos', async function () {
       {
         const { total, data } = await server.videos.listMyVideos({ token: userToken, sort: '-createdAt', search: 'user video' })
@@ -534,6 +559,28 @@ describe('Test users', function () {
       expect(user.autoPlayNextVideo).to.be.true
     })
 
+    it('Should be able to change the p2p attribute', async function () {
+      {
+        await server.users.updateMe({
+          token: userToken,
+          webTorrentEnabled: false
+        })
+
+        const user = await server.users.getMyInfo({ token: userToken })
+        expect(user.p2pEnabled).to.be.false
+      }
+
+      {
+        await server.users.updateMe({
+          token: userToken,
+          p2pEnabled: true
+        })
+
+        const user = await server.users.getMyInfo({ token: userToken })
+        expect(user.p2pEnabled).to.be.true
+      }
+    })
+
     it('Should be able to change the email attribute', async function () {
       await server.users.updateMe({
         token: userToken,
@@ -597,6 +644,7 @@ describe('Test users', function () {
       expect(user.account.description).to.equal('my super description updated')
       expect(user.noWelcomeModal).to.be.false
       expect(user.noInstanceConfigWarningModal).to.be.false
+      expect(user.noAccountSetupWarningModal).to.be.false
     })
 
     it('Should be able to update my theme', async function () {
@@ -612,12 +660,14 @@ describe('Test users', function () {
       await server.users.updateMe({
         token: userToken,
         noInstanceConfigWarningModal: true,
-        noWelcomeModal: true
+        noWelcomeModal: true,
+        noAccountSetupWarningModal: true
       })
 
       const user = await server.users.getMyInfo({ token: userToken })
       expect(user.noWelcomeModal).to.be.true
       expect(user.noInstanceConfigWarningModal).to.be.true
+      expect(user.noAccountSetupWarningModal).to.be.true
     })
   })