import {
createUser, flushTests, getMyUserInformation, getMyUserVideoRating, getUsersList, immutableAssign, killallServers, makeGetRequest,
- makePostBodyRequest, makePostUploadRequest, makePutBodyRequest, registerUser, removeUser, runServer, ServerInfo, setAccessTokensToServers,
+ makePostBodyRequest, makeUploadRequest, makePutBodyRequest, registerUser, removeUser, runServer, ServerInfo, setAccessTokensToServers,
updateUser, uploadVideo, userLogin
} from '../../utils'
import { checkBadCountPagination, checkBadSortPagination, checkBadStartPagination } from '../../utils/requests/check-api-params'
await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields })
})
+ it('Should fail with a "peertube" username', async function () {
+ const fields = immutableAssign(baseCorrectParams, { username: 'peertube' })
+
+ await makePostBodyRequest({
+ url: server.url,
+ path,
+ token: server.accessToken,
+ fields,
+ statusCodeExpected: 409
+ })
+ })
+
it('Should succeed with the correct params', async function () {
await makePostBodyRequest({
url: server.url,
await makePutBodyRequest({ url: server.url, path: path + 'me', token: userAccessToken, fields })
})
- it('Should fail with an invalid display NSFW attribute', async function () {
+ it('Should fail with an invalid NSFW policy attribute', async function () {
const fields = {
- displayNSFW: -1
+ nsfwPolicy: 'hello'
}
await makePutBodyRequest({ url: server.url, path: path + 'me', token: userAccessToken, fields })
await makePutBodyRequest({ url: server.url, path: path + 'me', token: 'super token', fields, statusCodeExpected: 401 })
})
+ it('Should fail with a too long description', async function () {
+ const fields = {
+ description: 'super'.repeat(60)
+ }
+
+ await makePutBodyRequest({ url: server.url, path: path + 'me', token: userAccessToken, fields })
+ })
+
it('Should succeed with the correct params', async function () {
const fields = {
password: 'my super password',
- displayNSFW: true,
+ nsfwPolicy: 'blur',
autoPlayVideo: false,
email: 'super_email@example.com'
}
it('Should fail without an incorrect input file', async function () {
const fields = {}
const attaches = {
- 'avatarfile': join(__dirname, '..', 'fixtures', 'video_short.mp4')
+ 'avatarfile': join(__dirname, '..', '..', 'fixtures', 'video_short.mp4')
}
- await makePostUploadRequest({ url: server.url, path: path + '/me/avatar/pick', token: server.accessToken, fields, attaches })
+ await makeUploadRequest({ url: server.url, path: path + '/me/avatar/pick', token: server.accessToken, fields, attaches })
})
it('Should fail with a big file', async function () {
const fields = {}
const attaches = {
- 'avatarfile': join(__dirname, '..', 'fixtures', 'avatar-big.png')
+ 'avatarfile': join(__dirname, '..', '..', 'fixtures', 'avatar-big.png')
}
- await makePostUploadRequest({ url: server.url, path: path + '/me/avatar/pick', token: server.accessToken, fields, attaches })
+ await makeUploadRequest({ url: server.url, path: path + '/me/avatar/pick', token: server.accessToken, fields, attaches })
})
it('Should succeed with the correct params', async function () {
const fields = {}
const attaches = {
- 'avatarfile': join(__dirname, '..', 'fixtures', 'avatar.png')
+ 'avatarfile': join(__dirname, '..', '..', 'fixtures', 'avatar.png')
}
- await makePostUploadRequest({
+ await makeUploadRequest({
url: server.url,
path: path + '/me/avatar/pick',
token: server.accessToken,
})
})
+ describe('When getting a user', function () {
+ before(async function () {
+ const res = await getUsersList(server.url, server.accessToken)
+
+ userId = res.body.data[1].id
+ })
+
+ it('Should fail with an non authenticated user', async function () {
+ await makeGetRequest({ url: server.url, path: path + userId, token: 'super token', statusCodeExpected: 401 })
+ })
+
+ it('Should fail with a non admin user', async function () {
+ await makeGetRequest({ url: server.url, path, token: userAccessToken, statusCodeExpected: 403 })
+ })
+
+ it('Should succeed with the correct params', async function () {
+ await makeGetRequest({ url: server.url, path: path + userId, token: server.accessToken, statusCodeExpected: 200 })
+ })
+ })
+
describe('When updating a user', function () {
before(async function () {
})
})
+ it('Should fail with a "peertube" username', async function () {
+ const fields = immutableAssign(baseCorrectParams, { username: 'peertube' })
+
+ await makePostBodyRequest({
+ url: server.url,
+ path: registrationPath,
+ token: server.accessToken,
+ fields,
+ statusCodeExpected: 409
+ })
+ })
+
it('Should fail if we register a user with the same email', async function () {
const fields = immutableAssign(baseCorrectParams, { email: 'admin1@example.com' })
})
it('Should fail with a registered user having too many video', async function () {
- this.timeout(10000)
+ this.timeout(15000)
const user = {
username: 'user3',
})
})
+ describe('When asking a password reset', function () {
+ const path = '/api/v1/users/ask-reset-password'
+
+ it('Should fail with a missing email', async function () {
+ const fields = {}
+
+ await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields })
+ })
+
+ it('Should fail with an invalid email', async function () {
+ const fields = { email: 'hello' }
+
+ await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields })
+ })
+
+ it('Should success with the correct params', async function () {
+ const fields = { email: 'admin@example.com' }
+
+ await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields, statusCodeExpected: 204 })
+ })
+ })
+
after(async function () {
killallServers([ server, serverWithRegistrationDisabled ])