3 const request = require('supertest')
11 getUsersListPaginationAndSort,
16 // ---------------------- Export functions --------------------
18 function createUser (url, accessToken, username, password, specialStatus, end) {
24 const path = '/api/v1/users'
28 email: username + '@example.com'
33 .set('Accept', 'application/json')
34 .set('Authorization', 'Bearer ' + accessToken)
36 .expect(specialStatus)
40 function registerUser (url, username, password, specialStatus, end) {
46 const path = '/api/v1/users/register'
50 email: username + '@example.com'
55 .set('Accept', 'application/json')
57 .expect(specialStatus)
61 function getUserInformation (url, accessToken, end) {
62 const path = '/api/v1/users/me'
66 .set('Accept', 'application/json')
67 .set('Authorization', 'Bearer ' + accessToken)
69 .expect('Content-Type', /json/)
73 function getUserVideoRating (url, accessToken, videoId, end) {
74 const path = '/api/v1/users/me/videos/' + videoId + '/rating'
78 .set('Accept', 'application/json')
79 .set('Authorization', 'Bearer ' + accessToken)
81 .expect('Content-Type', /json/)
85 function getUsersList (url, end) {
86 const path = '/api/v1/users'
90 .set('Accept', 'application/json')
92 .expect('Content-Type', /json/)
96 function getUsersListPaginationAndSort (url, start, count, sort, end) {
97 const path = '/api/v1/users'
101 .query({ start: start })
102 .query({ count: count })
103 .query({ sort: sort })
104 .set('Accept', 'application/json')
106 .expect('Content-Type', /json/)
110 function removeUser (url, userId, accessToken, expectedStatus, end) {
116 const path = '/api/v1/users'
119 .delete(path + '/' + userId)
120 .set('Accept', 'application/json')
121 .set('Authorization', 'Bearer ' + accessToken)
122 .expect(expectedStatus)
126 function updateUser (url, userId, accessToken, newPassword, displayNSFW, end) {
127 const path = '/api/v1/users/' + userId
130 if (newPassword !== undefined && newPassword !== null) toSend.password = newPassword
131 if (displayNSFW !== undefined && displayNSFW !== null) toSend.displayNSFW = displayNSFW
135 .set('Accept', 'application/json')
136 .set('Authorization', 'Bearer ' + accessToken)
142 // ---------------------------------------------------------------------------
144 module.exports = usersUtils