]>
git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/tests/api/check-params/video-abuses.js
3 const request
= require('supertest')
4 const series
= require('async/series')
6 const loginUtils
= require('../../utils/login')
7 const requestsUtils
= require('../../utils/requests')
8 const serversUtils
= require('../../utils/servers')
9 const usersUtils
= require('../../utils/users')
10 const videosUtils
= require('../../utils/videos')
12 describe('Test video abuses API validators', function () {
14 let userAccessToken
= null
16 // ---------------------------------------------------------------
18 before(function (done
) {
23 serversUtils
.flushTests(next
)
26 serversUtils
.runServer(1, function (server1
) {
33 loginUtils
.loginAndGetAccessToken(server
, function (err
, token
) {
35 server
.accessToken
= token
41 const username
= 'user1'
42 const password
= 'my super password'
44 usersUtils
.createUser(server
.url
, server
.accessToken
, username
, password
, next
)
49 password: 'my super password'
52 loginUtils
.getUserAccessToken(server
, user
, function (err
, accessToken
) {
55 userAccessToken
= accessToken
60 // Upload some videos on each pods
62 const name
= 'my super name for pod'
63 const description
= 'my super description for pod'
64 const tags
= [ 'tag' ]
65 const file
= 'video_short2.webm'
66 videosUtils
.uploadVideo(server
.url
, server
.accessToken
, name
, description
, tags
, file
, next
)
69 videosUtils
.getVideosList(server
.url
, function (err
, res
) {
72 const videos
= res
.body
.data
73 server
.video
= videos
[0]
81 describe('When listing video abuses', function () {
82 const path
= '/api/v1/videos/abuse'
84 it('Should fail with a bad start pagination', function (done
) {
87 .query({ start: 'hello' })
88 .set('Authorization', 'Bearer ' + server
.accessToken
)
89 .set('Accept', 'application/json')
93 it('Should fail with a bad count pagination', function (done
) {
96 .query({ count: 'hello' })
97 .set('Accept', 'application/json')
98 .set('Authorization', 'Bearer ' + server
.accessToken
)
102 it('Should fail with an incorrect sort', function (done
) {
105 .query({ sort: 'hello' })
106 .set('Accept', 'application/json')
107 .set('Authorization', 'Bearer ' + server
.accessToken
)
111 it('Should fail with a non authenticated user', function (done
) {
114 .query({ sort: 'hello' })
115 .set('Accept', 'application/json')
119 it('Should fail with a non admin user', function (done
) {
122 .query({ sort: 'hello' })
123 .set('Accept', 'application/json')
124 .set('Authorization', 'Bearer ' + userAccessToken
)
129 describe('When reporting a video abuse', function () {
130 const basePath
= '/api/v1/videos/'
132 it('Should fail with nothing', function (done
) {
133 const path
= basePath
+ server
.video
+ '/abuse'
135 requestsUtils
.makePostBodyRequest(server
.url
, path
, server
.accessToken
, data
, done
)
138 it('Should fail with a wrong video', function (done
) {
139 const wrongPath
= '/api/v1/videos/blabla/abuse'
141 requestsUtils
.makePostBodyRequest(server
.url
, wrongPath
, server
.accessToken
, data
, done
)
144 it('Should fail with a non authenticated user', function (done
) {
146 const path
= basePath
+ server
.video
+ '/abuse'
147 requestsUtils
.makePostBodyRequest(server
.url
, path
, 'hello', data
, done
, 401)
150 it('Should fail with a reason too short', function (done
) {
154 const path
= basePath
+ server
.video
+ '/abuse'
155 requestsUtils
.makePostBodyRequest(server
.url
, path
, server
.accessToken
, data
, done
)
158 it('Should fail with a reason too big', function (done
) {
160 reason: '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef' +
161 '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef' +
162 '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef' +
163 '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef'
165 const path
= basePath
+ server
.video
+ '/abuse'
166 requestsUtils
.makePostBodyRequest(server
.url
, path
, server
.accessToken
, data
, done
)
170 after(function (done
) {
171 process
.kill(-server
.app
.pid
)
173 // Keep the logs if the test failed
175 serversUtils
.flushTests(done
)