]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tests/api/users/users.ts
Correctly fix octet stream fallback for video ext
[github/Chocobozzz/PeerTube.git] / server / tests / api / users / users.ts
index 3a3fabb4c5bdb458ca48911e0433a7e1f24a6087..24203a7317dd888d6a964585df986a8cba119f65 100644 (file)
@@ -2,7 +2,7 @@
 
 import * as chai from 'chai'
 import 'mocha'
-import { User, UserRole, Video } from '../../../../shared/index'
+import { User, UserRole, Video, MyUser, VideoPlaylistType } from '../../../../shared/index'
 import {
   blockUser,
   cleanupTests,
@@ -251,7 +251,7 @@ describe('Test users', function () {
 
     it('Should be able to get user information', async function () {
       const res1 = await getMyUserInformation(server.url, accessTokenUser)
-      const userMe: User = res1.body
+      const userMe: MyUser = res1.body
 
       const res2 = await getUserInformation(server.url, server.accessToken, userMe.id)
       const userGet: User = res2.body
@@ -269,6 +269,9 @@ describe('Test users', function () {
 
       expect(userMe.adminFlags).to.be.undefined
       expect(userGet.adminFlags).to.equal(UserAdminFlag.BY_PASS_VIDEO_AUTO_BLACKLIST)
+
+      expect(userMe.specialPlaylists).to.have.lengthOf(1)
+      expect(userMe.specialPlaylists[0].type).to.equal(VideoPlaylistType.WATCH_LATER)
     })
   })
 
@@ -309,6 +312,24 @@ describe('Test users', function () {
       expect(video.thumbnailPath).to.not.be.null
       expect(video.previewPath).to.not.be.null
     })
+
+    it('Should be able to search in my videos', async function () {
+      {
+        const res = await getMyVideos(server.url, accessTokenUser, 0, 5, '-createdAt', 'user video')
+        expect(res.body.total).to.equal(1)
+
+        const videos = res.body.data
+        expect(videos).to.have.lengthOf(1)
+      }
+
+      {
+        const res = await getMyVideos(server.url, accessTokenUser, 0, 5, '-createdAt', 'toto')
+        expect(res.body.total).to.equal(0)
+
+        const videos = res.body.data
+        expect(videos).to.have.lengthOf(0)
+      }
+    })
   })
 
   describe('Users listing', function () {
@@ -442,7 +463,7 @@ describe('Test users', function () {
         url: server.url,
         accessToken: accessTokenUser,
         currentPassword: 'super password',
-        newPassword: 'new password'
+        password: 'new password'
       })
       user.password = 'new password'
 
@@ -481,6 +502,19 @@ describe('Test users', function () {
       expect(user.autoPlayVideo).to.be.false
     })
 
+    it('Should be able to change the autoPlayNextVideo attribute', async function () {
+      await updateMyUser({
+        url: server.url,
+        accessToken: accessTokenUser,
+        autoPlayNextVideo: true
+      })
+
+      const res = await getMyUserInformation(server.url, accessTokenUser)
+      const user = res.body
+
+      expect(user.autoPlayNextVideo).to.be.true
+    })
+
     it('Should be able to change the email attribute', async function () {
       await updateMyUser({
         url: server.url,
@@ -543,7 +577,7 @@ describe('Test users', function () {
       })
 
       const res = await getMyUserInformation(server.url, accessTokenUser)
-      const user = res.body
+      const user: User = res.body
 
       expect(user.username).to.equal('user_1')
       expect(user.email).to.equal('updated@example.com')
@@ -552,6 +586,8 @@ describe('Test users', function () {
       expect(user.id).to.be.a('number')
       expect(user.account.displayName).to.equal('new display name')
       expect(user.account.description).to.equal('my super description updated')
+      expect(user.noWelcomeModal).to.be.false
+      expect(user.noInstanceConfigWarningModal).to.be.false
     })
 
     it('Should be able to update my theme', async function () {
@@ -568,6 +604,21 @@ describe('Test users', function () {
         expect(body.theme).to.equal(theme)
       }
     })
+
+    it('Should be able to update my modal preferences', async function () {
+      await updateMyUser({
+        url: server.url,
+        accessToken: accessTokenUser,
+        noInstanceConfigWarningModal: true,
+        noWelcomeModal: true
+      })
+
+      const res = await getMyUserInformation(server.url, accessTokenUser)
+      const user: User = res.body
+
+      expect(user.noWelcomeModal).to.be.true
+      expect(user.noInstanceConfigWarningModal).to.be.true
+    })
   })
 
   describe('Updating another user', function () {