blob: ae3f0e6f992a91077b022496a3a3fb12e0d4e499 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
import { test } from '@japa/runner';
import User from 'App/Models/User';
import UserFactory from 'Database/factories/UserFactory';
test.group('Dashboard / Delete account page', () => {
test('redirects to /user/login when accessing /user/delete as guest', async ({
client,
}) => {
const response = await client.get('/user/delete');
response.assertRedirectsTo('/user/login'); // Check if it redirects to the expected URL
});
test('returns a 200 opening the delete route while logged in', async ({
client,
}) => {
const user = await UserFactory.create();
const response = await client.get('/user/delete').loginAs(user);
response.assertStatus(200);
response.assertTextIncludes('Delete your account');
});
test('returns a 200 opening the delete route while logged in', async ({
client,
assert,
}) => {
const user = await UserFactory.create();
const response = await client.post('/user/delete').loginAs(user);
response.assertRedirectsTo('/user/login');
// This asserts the session is deleted as well
response.assertSessionMissing('auth_web');
assert.isNull(await User.find(user.id));
});
});
|