mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-23 11:44:06 -08:00
fix(core): Fix user-management:reset
command (#3403)
* 🐛 Fix `email` setting * 🧪 Add test * 🧪 Add expectation for user email * ⚡ Replace request with helper
This commit is contained in:
parent
a5d2ddfa26
commit
58ecadf53c
|
@ -133,7 +133,7 @@ export class User {
|
|||
@BeforeInsert()
|
||||
@BeforeUpdate()
|
||||
preUpsertHook(): void {
|
||||
this.email = this.email?.toLowerCase();
|
||||
this.email = this.email?.toLowerCase() ?? null;
|
||||
this.updatedAt = new Date();
|
||||
}
|
||||
|
||||
|
|
44
packages/cli/test/integration/commands/reset.cmd.test.ts
Normal file
44
packages/cli/test/integration/commands/reset.cmd.test.ts
Normal file
|
@ -0,0 +1,44 @@
|
|||
import { execSync } from 'child_process';
|
||||
|
||||
import express from 'express';
|
||||
import path from 'path';
|
||||
|
||||
import { Db } from '../../../src';
|
||||
import * as utils from '../shared/utils';
|
||||
import type { Role } from '../../../src/databases/entities/Role';
|
||||
import * as testDb from '../shared/testDb';
|
||||
import { randomEmail, randomName, randomValidPassword } from '../shared/random';
|
||||
|
||||
let app: express.Application;
|
||||
let testDbName = '';
|
||||
let globalOwnerRole: Role;
|
||||
|
||||
beforeAll(async () => {
|
||||
app = utils.initTestServer({ endpointGroups: ['owner'], applyAuth: true });
|
||||
const initResult = await testDb.init();
|
||||
testDbName = initResult.testDbName;
|
||||
|
||||
globalOwnerRole = await testDb.getGlobalOwnerRole();
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await testDb.terminate(testDbName);
|
||||
});
|
||||
|
||||
test('user-management:reset should reset DB to default user state', async () => {
|
||||
await testDb.createUser({ globalRole: globalOwnerRole });
|
||||
|
||||
const command = [path.join('bin', 'n8n'), 'user-management:reset'].join(' ');
|
||||
|
||||
execSync(command);
|
||||
|
||||
const user = await Db.collections.User.findOne();
|
||||
|
||||
expect(user?.email).toBeNull();
|
||||
expect(user?.firstName).toBeNull();
|
||||
expect(user?.lastName).toBeNull();
|
||||
expect(user?.password).toBeNull();
|
||||
expect(user?.resetPasswordToken).toBeNull();
|
||||
expect(user?.resetPasswordTokenExpiration).toBeNull();
|
||||
expect(user?.personalizationAnswers).toBeNull();
|
||||
});
|
Loading…
Reference in a new issue