X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=inline;f=server%2Ftests%2Fapi%2Fcheck-params%2Fusers.js;h=b04f9f4a6fa6cdefab7b9406fffb30af0b2db95a;hb=b4c5ac97ffa3e16f837b7e2d72291656eefac812;hp=c1fcf34a48715817fe0cd68f213ed9df7e6abb50;hpb=99fe265a5fc077cb66c322e7f3d191ff7110aea0;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/tests/api/check-params/users.js b/server/tests/api/check-params/users.js index c1fcf34a4..b04f9f4a6 100644 --- a/server/tests/api/check-params/users.js +++ b/server/tests/api/check-params/users.js @@ -1,3 +1,5 @@ +/* eslint-disable no-unused-expressions */ + 'use strict' const request = require('supertest') @@ -7,11 +9,13 @@ const loginUtils = require('../../utils/login') const requestsUtils = require('../../utils/requests') const serversUtils = require('../../utils/servers') const usersUtils = require('../../utils/users') +const videosUtils = require('../../utils/videos') describe('Test users API validators', function () { const path = '/api/v1/users/' let userId = null let rootId = null + let videoId = null let server = null let userAccessToken = null @@ -45,6 +49,20 @@ describe('Test users API validators', function () { usersUtils.createUser(server.url, server.accessToken, username, password, next) }, + function (next) { + const videoAttributes = {} + videosUtils.uploadVideo(server.url, server.accessToken, videoAttributes, next) + }, + function (next) { + videosUtils.getVideosList(server.url, function (err, res) { + if (err) throw err + + const videos = res.body.data + videoId = videos[0].id + + next() + }) + }, function (next) { const user = { username: 'user1', @@ -92,6 +110,7 @@ describe('Test users API validators', function () { it('Should fail with a too small username', function (done) { const data = { username: 'ji', + email: 'test@example.com', password: 'mysuperpassword' } @@ -101,6 +120,7 @@ describe('Test users API validators', function () { it('Should fail with a too long username', function (done) { const data = { username: 'mysuperusernamewhichisverylong', + email: 'test@example.com', password: 'mysuperpassword' } @@ -110,6 +130,26 @@ describe('Test users API validators', function () { it('Should fail with an incorrect username', function (done) { const data = { username: 'my username', + email: 'test@example.com', + password: 'mysuperpassword' + } + + requestsUtils.makePostBodyRequest(server.url, path, server.accessToken, data, done) + }) + + it('Should fail with a missing email', function (done) { + const data = { + username: 'ji', + password: 'mysuperpassword' + } + + requestsUtils.makePostBodyRequest(server.url, path, server.accessToken, data, done) + }) + + it('Should fail with an invalid email', function (done) { + const data = { + username: 'mysuperusernamewhichisverylong', + email: 'testexample.com', password: 'mysuperpassword' } @@ -119,6 +159,7 @@ describe('Test users API validators', function () { it('Should fail with a too small password', function (done) { const data = { username: 'myusername', + email: 'test@example.com', password: 'bla' } @@ -128,6 +169,7 @@ describe('Test users API validators', function () { it('Should fail with a too long password', function (done) { const data = { username: 'myusername', + email: 'test@example.com', password: 'my super long password which is very very very very very very very very very very very very very very' + 'very very very very very very very very very very very very very very very veryv very very very very' + 'very very very very very very very very very very very very very very very very very very very very long' @@ -139,6 +181,7 @@ describe('Test users API validators', function () { it('Should fail with an non authenticated user', function (done) { const data = { username: 'myusername', + email: 'test@example.com', password: 'my super password' } @@ -148,6 +191,17 @@ describe('Test users API validators', function () { it('Should fail if we add a user with the same username', function (done) { const data = { username: 'user1', + email: 'test@example.com', + password: 'my super password' + } + + requestsUtils.makePostBodyRequest(server.url, path, server.accessToken, data, done, 409) + }) + + it('Should fail if we add a user with the same email', function (done) { + const data = { + username: 'myusername', + email: 'user1@example.com', password: 'my super password' } @@ -157,6 +211,7 @@ describe('Test users API validators', function () { it('Should succeed with the correct params', function (done) { const data = { username: 'user2', + email: 'test@example.com', password: 'my super password' } @@ -166,6 +221,7 @@ describe('Test users API validators', function () { it('Should fail with a non admin user', function (done) { server.user = { username: 'user1', + email: 'test@example.com', password: 'my super password' } @@ -176,6 +232,7 @@ describe('Test users API validators', function () { const data = { username: 'user3', + email: 'test@example.com', password: 'my super password' } @@ -248,6 +305,63 @@ describe('Test users API validators', function () { }) }) + describe('When getting my video rating', function () { + it('Should fail with a non authenticated user', function (done) { + request(server.url) + .get(path + 'me/videos/' + videoId + '/rating') + .set('Authorization', 'Bearer faketoken') + .set('Accept', 'application/json') + .expect(401, done) + }) + + it('Should fail with an incorrect video uuid', function (done) { + request(server.url) + .get(path + 'me/videos/blabla/rating') + .set('Authorization', 'Bearer ' + userAccessToken) + .set('Accept', 'application/json') + .expect(400, done) + }) + + it('Should fail with an unknown video', function (done) { + request(server.url) + .get(path + 'me/videos/4da6fde3-88f7-4d16-b119-108df5630b06/rating') + .set('Authorization', 'Bearer ' + userAccessToken) + .set('Accept', 'application/json') + .expect(404, done) + }) + + it('Should success with the correct parameters', function (done) { + request(server.url) + .get(path + 'me/videos/' + videoId + '/rating') + .set('Authorization', 'Bearer ' + userAccessToken) + .set('Accept', 'application/json') + .expect(200, done) + }) + }) + + describe('When removing an user', function () { + it('Should fail with an incorrect id', function (done) { + request(server.url) + .delete(path + 'bla-bla') + .set('Authorization', 'Bearer ' + server.accessToken) + .expect(400, done) + }) + + it('Should fail with the root user', function (done) { + request(server.url) + .delete(path + rootId) + .set('Authorization', 'Bearer ' + server.accessToken) + .expect(400, done) + }) + + it('Should return 404 with a non existing id', function (done) { + request(server.url) + .delete(path + '45') + .set('Authorization', 'Bearer ' + server.accessToken) + .expect(404, done) + }) + }) + describe('When removing an user', function () { it('Should fail with an incorrect id', function (done) { request(server.url)