test(user): write test for createAdmin
This commit is contained in:
@@ -3,6 +3,7 @@ import { DateTime, Duration } from 'luxon';
|
|||||||
import appConfig from '../config/app.js';
|
import appConfig from '../config/app.js';
|
||||||
import Base from './base.js';
|
import Base from './base.js';
|
||||||
import AccessToken from './access-token.js';
|
import AccessToken from './access-token.js';
|
||||||
|
import Config from './config.js';
|
||||||
import Connection from './connection.js';
|
import Connection from './connection.js';
|
||||||
import Execution from './execution.js';
|
import Execution from './execution.js';
|
||||||
import Flow from './flow.js';
|
import Flow from './flow.js';
|
||||||
@@ -1128,4 +1129,29 @@ describe('User model', () => {
|
|||||||
expect(await user.getInvoices()).toStrictEqual([]);
|
expect(await user.getInvoices()).toStrictEqual([]);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it.todo('getApps');
|
||||||
|
|
||||||
|
it('createAdmin should create admin with given data and mark the installation completed', async () => {
|
||||||
|
const adminRole = await createRole({ name: 'Admin' });
|
||||||
|
|
||||||
|
const markInstallationCompletedSpy = vi
|
||||||
|
.spyOn(Config, 'markInstallationCompleted')
|
||||||
|
.mockResolvedValue();
|
||||||
|
|
||||||
|
const adminUser = await User.createAdmin({
|
||||||
|
fullName: 'Sample admin',
|
||||||
|
email: 'admin@automatisch.io',
|
||||||
|
password: 'sample',
|
||||||
|
});
|
||||||
|
|
||||||
|
expect(adminUser).toMatchObject({
|
||||||
|
fullName: 'Sample admin',
|
||||||
|
email: 'admin@automatisch.io',
|
||||||
|
roleId: adminRole.id,
|
||||||
|
});
|
||||||
|
|
||||||
|
expect(markInstallationCompletedSpy).toHaveBeenCalledOnce();
|
||||||
|
expect(await adminUser.login('sample')).toBe(true);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
Reference in New Issue
Block a user