X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Ftests%2Fapi%2Fserver%2Femail.ts;h=cd8d703411c21de44bcbbfda5ecec35a91fb573e;hb=0fbc0dec59684527fad8772080a8e1f928c07ea1;hp=422db6cebf1ceac0de194f478ce3de86b5bd6f54;hpb=7926c5f9b3ffcabb1ffb0dcfa5e48b8e0b88fbc0;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/tests/api/server/email.ts b/server/tests/api/server/email.ts index 422db6ceb..cd8d70341 100644 --- a/server/tests/api/server/email.ts +++ b/server/tests/api/server/email.ts @@ -2,26 +2,18 @@ import 'mocha' import * as chai from 'chai' -import { HttpStatusCode } from '@shared/core-utils' -import { - cleanupTests, - flushAndRunServer, - MockSmtpServer, - ServerInfo, - setAccessTokensToServers, - uploadVideo, - waitJobs -} from '@shared/extra-utils' +import { cleanupTests, createSingleServer, MockSmtpServer, PeerTubeServer, setAccessTokensToServers, waitJobs } from '@shared/extra-utils' +import { HttpStatusCode } from '@shared/models' const expect = chai.expect describe('Test emails', function () { - let server: ServerInfo + let server: PeerTubeServer let userId: number let userId2: number let userAccessToken: string - let videoUUID: string + let videoShortUUID: string let videoId: number let videoUserUUID: string @@ -47,31 +39,29 @@ describe('Test emails', function () { port: emailPort } } - server = await flushAndRunServer(1, overrideConfig) + server = await createSingleServer(1, overrideConfig) await setAccessTokensToServers([ server ]) { - const created = await server.usersCommand.create({ username: user.username, password: user.password }) + const created = await server.users.create({ username: user.username, password: user.password }) userId = created.id - userAccessToken = await server.loginCommand.getAccessToken(user) + userAccessToken = await server.login.getAccessToken(user) } { - const attributes = { - name: 'my super user video' - } - const res = await uploadVideo(server.url, userAccessToken, attributes) - videoUserUUID = res.body.video.uuid + const attributes = { name: 'my super user video' } + const { uuid } = await server.videos.upload({ token: userAccessToken, attributes }) + videoUserUUID = uuid } { const attributes = { name: 'my super name' } - const res = await uploadVideo(server.url, server.accessToken, attributes) - videoUUID = res.body.video.uuid - videoId = res.body.video.id + const { shortUUID, id } = await server.videos.upload({ attributes }) + videoShortUUID = shortUUID + videoId = id } }) @@ -80,7 +70,7 @@ describe('Test emails', function () { it('Should ask to reset the password', async function () { this.timeout(10000) - await server.usersCommand.askResetPassword({ email: 'user_1@example.com' }) + await server.users.askResetPassword({ email: 'user_1@example.com' }) await waitJobs(server) expect(emails).to.have.lengthOf(1) @@ -106,7 +96,7 @@ describe('Test emails', function () { }) it('Should not reset the password with an invalid verification string', async function () { - await server.usersCommand.resetPassword({ + await server.users.resetPassword({ userId, verificationString: verificationString + 'b', password: 'super_password2', @@ -115,11 +105,11 @@ describe('Test emails', function () { }) it('Should reset the password', async function () { - await server.usersCommand.resetPassword({ userId, verificationString, password: 'super_password2' }) + await server.users.resetPassword({ userId, verificationString, password: 'super_password2' }) }) it('Should not reset the password with the same verification string', async function () { - await server.usersCommand.resetPassword({ + await server.users.resetPassword({ userId, verificationString, password: 'super_password3', @@ -130,7 +120,7 @@ describe('Test emails', function () { it('Should login with this new password', async function () { user.password = 'super_password2' - await server.loginCommand.getAccessToken(user) + await server.login.getAccessToken(user) }) }) @@ -139,7 +129,7 @@ describe('Test emails', function () { it('Should send a create password email', async function () { this.timeout(10000) - await server.usersCommand.create({ username: 'create_password', password: '' }) + await server.users.create({ username: 'create_password', password: '' }) await waitJobs(server) expect(emails).to.have.lengthOf(2) @@ -165,7 +155,7 @@ describe('Test emails', function () { }) it('Should not reset the password with an invalid verification string', async function () { - await server.usersCommand.resetPassword({ + await server.users.resetPassword({ userId: userId2, verificationString: verificationString2 + 'c', password: 'newly_created_password', @@ -174,7 +164,7 @@ describe('Test emails', function () { }) it('Should reset the password', async function () { - await server.usersCommand.resetPassword({ + await server.users.resetPassword({ userId: userId2, verificationString: verificationString2, password: 'newly_created_password' @@ -182,7 +172,7 @@ describe('Test emails', function () { }) it('Should login with this new password', async function () { - await server.loginCommand.getAccessToken({ + await server.login.getAccessToken({ username: 'create_password', password: 'newly_created_password' }) @@ -190,11 +180,12 @@ describe('Test emails', function () { }) describe('When creating an abuse', function () { + it('Should send the notification email', async function () { this.timeout(10000) const reason = 'my super bad reason' - await server.abusesCommand.report({ videoId, reason }) + await server.abuses.report({ token: userAccessToken, videoId, reason }) await waitJobs(server) expect(emails).to.have.lengthOf(3) @@ -205,7 +196,7 @@ describe('Test emails', function () { expect(email['from'][0]['address']).equal('test-admin@localhost') expect(email['to'][0]['address']).equal('admin' + server.internalServerNumber + '@example.com') expect(email['subject']).contains('abuse') - expect(email['text']).contains(videoUUID) + expect(email['text']).contains(videoShortUUID) }) }) @@ -215,7 +206,7 @@ describe('Test emails', function () { this.timeout(10000) const reason = 'my super bad reason' - await server.usersCommand.banUser({ userId, reason }) + await server.users.banUser({ userId, reason }) await waitJobs(server) expect(emails).to.have.lengthOf(4) @@ -233,7 +224,7 @@ describe('Test emails', function () { it('Should send the notification email when unblocking a user', async function () { this.timeout(10000) - await server.usersCommand.unbanUser({ userId }) + await server.users.unbanUser({ userId }) await waitJobs(server) expect(emails).to.have.lengthOf(5) @@ -253,7 +244,7 @@ describe('Test emails', function () { this.timeout(10000) const reason = 'my super reason' - await server.blacklistCommand.add({ videoId: videoUserUUID, reason }) + await server.blacklist.add({ videoId: videoUserUUID, reason }) await waitJobs(server) expect(emails).to.have.lengthOf(6) @@ -271,7 +262,7 @@ describe('Test emails', function () { it('Should send the notification email', async function () { this.timeout(10000) - await server.blacklistCommand.remove({ videoId: videoUserUUID }) + await server.blacklist.remove({ videoId: videoUserUUID }) await waitJobs(server) expect(emails).to.have.lengthOf(7) @@ -296,7 +287,7 @@ describe('Test emails', function () { it('Should ask to send the verification email', async function () { this.timeout(10000) - await server.usersCommand.askSendVerifyEmail({ email: 'user_1@example.com' }) + await server.users.askSendVerifyEmail({ email: 'user_1@example.com' }) await waitJobs(server) expect(emails).to.have.lengthOf(8) @@ -322,7 +313,7 @@ describe('Test emails', function () { }) it('Should not verify the email with an invalid verification string', async function () { - await server.usersCommand.verifyEmail({ + await server.users.verifyEmail({ userId, verificationString: verificationString + 'b', isPendingEmail: false, @@ -331,7 +322,7 @@ describe('Test emails', function () { }) it('Should verify the email', async function () { - await server.usersCommand.verifyEmail({ userId, verificationString }) + await server.users.verifyEmail({ userId, verificationString }) }) })