feat: secure admin user management

This commit is contained in:
Bastian Wagner
2026-07-31 23:37:54 +02:00
parent 4105460400
commit e6acfdcac7
22 changed files with 1598 additions and 148 deletions

View File

@@ -1,18 +1,25 @@
import { Test, TestingModule } from '@nestjs/testing';
import { LoggingService } from './logging.service';
describe('LoggingService', () => {
let service: LoggingService;
it('can persist an event through the caller transaction manager', async () => {
const defaultRepository = { save: jest.fn() };
const transactionRepository = { save: jest.fn() };
const manager = {
getRepository: jest.fn(() => transactionRepository),
} as any;
const service = new LoggingService(defaultRepository as any);
const event = {
event: 'admin_user_profile_update' as const,
details: 'targetUserId=2',
userId: 1,
};
beforeEach(async () => {
const module: TestingModule = await Test.createTestingModule({
providers: [LoggingService],
}).compile();
await service.info(event, manager);
service = module.get<LoggingService>(LoggingService);
});
it('should be defined', () => {
expect(service).toBeDefined();
expect(transactionRepository.save).toHaveBeenCalledWith({
...event,
level: 'INFO',
});
expect(defaultRepository.save).not.toHaveBeenCalled();
});
});