diff options
author | Josh Morel <morel.josh@hotmail.com> | 2018-08-31 03:18:19 -0400 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2018-08-31 09:18:19 +0200 |
commit | d9eaee3939bf2e93e5d775d32bce77842201faba (patch) | |
tree | c115acb3611986b98f51b3addf29ebe66f63ee7f /server/tests/api/check-params | |
parent | 04291e1ba44032165388758e993d385a10c1c5a1 (diff) | |
download | PeerTube-d9eaee3939bf2e93e5d775d32bce77842201faba.tar.gz PeerTube-d9eaee3939bf2e93e5d775d32bce77842201faba.tar.zst PeerTube-d9eaee3939bf2e93e5d775d32bce77842201faba.zip |
add user account email verificiation (#977)
* add user account email verificiation
includes server and client code to:
* enable verificationRequired via custom config
* send verification email with registration
* ask for verification email
* verify via email
* prevent login if not verified and required
* conditional client links to ask for new verification email
* allow login for verified=null
these are users created when verification not required
should still be able to login when verification is enabled
* refactor email verifcation pr
* change naming from verified to emailVerified
* change naming from askVerifyEmail to askSendVerifyEmail
* undo unrelated automatic prettier formatting on api/config
* use redirectService for home
* remove redundant success notification on email verified
* revert test.yaml smpt host
Diffstat (limited to 'server/tests/api/check-params')
-rw-r--r-- | server/tests/api/check-params/config.ts | 3 | ||||
-rw-r--r-- | server/tests/api/check-params/users.ts | 22 |
2 files changed, 24 insertions, 1 deletions
diff --git a/server/tests/api/check-params/config.ts b/server/tests/api/check-params/config.ts index ecfb76d47..d807f910b 100644 --- a/server/tests/api/check-params/config.ts +++ b/server/tests/api/check-params/config.ts | |||
@@ -42,7 +42,8 @@ describe('Test config API validators', function () { | |||
42 | }, | 42 | }, |
43 | signup: { | 43 | signup: { |
44 | enabled: false, | 44 | enabled: false, |
45 | limit: 5 | 45 | limit: 5, |
46 | requiresEmailVerification: false | ||
46 | }, | 47 | }, |
47 | admin: { | 48 | admin: { |
48 | email: 'superadmin1@example.com' | 49 | email: 'superadmin1@example.com' |
diff --git a/server/tests/api/check-params/users.ts b/server/tests/api/check-params/users.ts index 8b2ed1b04..95903c8a5 100644 --- a/server/tests/api/check-params/users.ts +++ b/server/tests/api/check-params/users.ts | |||
@@ -737,6 +737,28 @@ describe('Test users API validators', function () { | |||
737 | }) | 737 | }) |
738 | }) | 738 | }) |
739 | 739 | ||
740 | describe('When asking for an account verification email', function () { | ||
741 | const path = '/api/v1/users/ask-send-verify-email' | ||
742 | |||
743 | it('Should fail with a missing email', async function () { | ||
744 | const fields = {} | ||
745 | |||
746 | await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields }) | ||
747 | }) | ||
748 | |||
749 | it('Should fail with an invalid email', async function () { | ||
750 | const fields = { email: 'hello' } | ||
751 | |||
752 | await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields }) | ||
753 | }) | ||
754 | |||
755 | it('Should succeed with the correct params', async function () { | ||
756 | const fields = { email: 'admin@example.com' } | ||
757 | |||
758 | await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields, statusCodeExpected: 204 }) | ||
759 | }) | ||
760 | }) | ||
761 | |||
740 | after(async function () { | 762 | after(async function () { |
741 | killallServers([ server, serverWithRegistrationDisabled ]) | 763 | killallServers([ server, serverWithRegistrationDisabled ]) |
742 | 764 | ||