]>
git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/tests/api/check-params/pods.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')
11 describe('Test pods API validators', function () {
12 const path
= '/api/v1/pods/'
15 // ---------------------------------------------------------------
17 before(function (done
) {
22 serversUtils
.flushTests(next
)
25 serversUtils
.runServer(1, function (server1
) {
32 loginUtils
.loginAndGetAccessToken(server
, function (err
, token
) {
34 server
.accessToken
= token
42 describe('When making friends', function () {
43 let userAccessToken
= null
45 before(function (done
) {
46 usersUtils
.createUser(server
.url
, server
.accessToken
, 'user1', 'password', function () {
52 loginUtils
.loginAndGetAccessToken(server
, function (err
, accessToken
) {
55 userAccessToken
= accessToken
62 describe('When making friends', function () {
64 hosts: [ 'localhost:9002' ]
67 it('Should fail without hosts', function (done
) {
69 .post(path
+ '/makefriends')
70 .set('Authorization', 'Bearer ' + server
.accessToken
)
71 .set('Accept', 'application/json')
75 it('Should fail if hosts is not an array', function (done
) {
77 .post(path
+ '/makefriends')
78 .send({ hosts: 'localhost:9002' })
79 .set('Authorization', 'Bearer ' + server
.accessToken
)
80 .set('Accept', 'application/json')
84 it('Should fail if the array is not composed by hosts', function (done
) {
86 .post(path
+ '/makefriends')
87 .send({ hosts: [ 'localhost:9002', 'localhost:coucou' ] })
88 .set('Authorization', 'Bearer ' + server
.accessToken
)
89 .set('Accept', 'application/json')
93 it('Should fail if the array is composed with http schemes', function (done
) {
95 .post(path
+ '/makefriends')
96 .send({ hosts: [ 'localhost:9002', 'http://localhost:9003' ] })
97 .set('Authorization', 'Bearer ' + server
.accessToken
)
98 .set('Accept', 'application/json')
102 it('Should fail if hosts are not unique', function (done
) {
104 .post(path
+ '/makefriends')
105 .send({ urls: [ 'localhost:9002', 'localhost:9002' ] })
106 .set('Authorization', 'Bearer ' + server
.accessToken
)
107 .set('Accept', 'application/json')
111 it('Should fail with a invalid token', function (done
) {
113 .post(path
+ '/makefriends')
115 .set('Authorization', 'Bearer faketoken')
116 .set('Accept', 'application/json')
120 it('Should fail if the user is not an administrator', function (done
) {
122 .post(path
+ '/makefriends')
124 .set('Authorization', 'Bearer ' + userAccessToken
)
125 .set('Accept', 'application/json')
130 describe('When quitting friends', function () {
131 it('Should fail with a invalid token', function (done
) {
133 .get(path
+ '/quitfriends')
134 .query({ start: 'hello' })
135 .set('Authorization', 'Bearer faketoken')
136 .set('Accept', 'application/json')
140 it('Should fail if the user is not an administrator', function (done
) {
142 .get(path
+ '/quitfriends')
143 .query({ start: 'hello' })
144 .set('Authorization', 'Bearer ' + userAccessToken
)
145 .set('Accept', 'application/json')
151 describe('When adding a pod', function () {
152 it('Should fail with nothing', function (done
) {
154 requestsUtils
.makePostBodyRequest(server
.url
, path
, null, data
, done
)
157 it('Should fail without public key', function (done
) {
161 requestsUtils
.makePostBodyRequest(server
.url
, path
, null, data
, done
)
164 it('Should fail without an host', function (done
) {
166 publicKey: 'mysuperpublickey'
168 requestsUtils
.makePostBodyRequest(server
.url
, path
, null, data
, done
)
171 it('Should fail with an incorrect host', function (done
) {
173 host: 'http://coucou.com',
174 publicKey: 'mysuperpublickey'
176 requestsUtils
.makePostBodyRequest(server
.url
, path
, null, data
, function () {
177 data
.host
= 'http://coucou'
178 requestsUtils
.makePostBodyRequest(server
.url
, path
, null, data
, function () {
180 requestsUtils
.makePostBodyRequest(server
.url
, path
, null, data
, done
)
185 it('Should succeed with the correct parameters', function (done
) {
188 publicKey: 'mysuperpublickey'
190 requestsUtils
.makePostBodyRequest(server
.url
, path
, null, data
, done
, 200)
193 it('Should fail with a host that already exists', function (done
) {
196 publicKey: 'mysuperpublickey'
198 requestsUtils
.makePostBodyRequest(server
.url
, path
, null, data
, done
, 409)
202 after(function (done
) {
203 process
.kill(-server
.app
.pid
)
205 // Keep the logs if the test failed
207 serversUtils
.flushTests(done
)