fix issues

This commit is contained in:
2026-01-02 00:21:24 +01:00
parent 79913bb45e
commit 8693dde21e
46 changed files with 1680 additions and 302 deletions

View File

@@ -25,7 +25,7 @@ describe('InMemoryAuthRepository', () => {
const user = User.create({
id: UserId.fromString('user-1'),
displayName: 'Test User',
displayName: 'John Smith',
email: 'test@example.com',
});
@@ -49,7 +49,7 @@ describe('InMemoryAuthRepository', () => {
const user = User.create({
id: UserId.fromString('user-2'),
displayName: 'User Two',
displayName: 'Jane Smith',
email: 'two@example.com',
});
@@ -57,13 +57,13 @@ describe('InMemoryAuthRepository', () => {
const updated = User.create({
id: UserId.fromString('user-2'),
displayName: 'User Two Updated',
displayName: 'Jane Smith Updated',
email: 'two@example.com',
});
await authRepo.save(updated);
const stored = await userRepo.findById('user-2');
expect(stored?.displayName).toBe('User Two Updated');
expect(stored?.displayName).toBe('Jane Smith Updated');
});
});

View File

@@ -5,22 +5,22 @@ export class PasswordResetRequestOrmEntity {
@PrimaryGeneratedColumn('uuid')
id!: string;
@Column()
@Column({ type: 'varchar' })
email!: string;
@Column({ unique: true })
@Column({ type: 'varchar', unique: true })
token!: string;
@Column()
@Column({ type: 'timestamp' })
expiresAt!: Date;
@Column()
@Column({ type: 'varchar' })
userId!: string;
@Column({ default: false })
@Column({ type: 'boolean', default: false })
used!: boolean;
@Column({ default: 0 })
@Column({ type: 'int', default: 0 })
attemptCount!: number;
@CreateDateColumn()

View File

@@ -13,7 +13,7 @@ describe('UserOrmMapper', () => {
const entity = new UserOrmEntity();
entity.id = '00000000-0000-4000-8000-000000000001';
entity.email = 'alice@example.com';
entity.displayName = 'Alice';
entity.displayName = 'Alice Smith';
entity.passwordHash = 'bcrypt-hash';
entity.salt = 'test-salt';
entity.primaryDriverId = null;

View File

@@ -62,7 +62,7 @@ describe('TypeOrmAuthRepository', () => {
const domainUser = User.create({
id: userId,
email: 'test@example.com',
displayName: 'Test User',
displayName: 'John Smith',
passwordHash,
});

View File

@@ -18,25 +18,25 @@ describe('DefaultMediaResolverAdapter', () => {
it('should resolve avatar default without variant', async () => {
const ref = MediaReference.createSystemDefault('avatar');
const url = await adapter.resolve(ref);
expect(url).toBe('/media/default/neutral-default-avatar.png');
expect(url).toBe('/media/default/neutral-default-avatar');
});
it('should resolve male avatar default', async () => {
const ref = MediaReference.createSystemDefault('avatar', 'male');
const url = await adapter.resolve(ref);
expect(url).toBe('/media/default/male-default-avatar.png');
expect(url).toBe('/media/default/male-default-avatar');
});
it('should resolve female avatar default', async () => {
const ref = MediaReference.createSystemDefault('avatar', 'female');
const url = await adapter.resolve(ref);
expect(url).toBe('/media/default/female-default-avatar.png');
expect(url).toBe('/media/default/female-default-avatar');
});
it('should resolve neutral avatar default', async () => {
const ref = MediaReference.createSystemDefault('avatar', 'neutral');
const url = await adapter.resolve(ref);
expect(url).toBe('/media/default/neutral-default-avatar.png');
expect(url).toBe('/media/default/neutral-default-avatar');
});
it('should resolve team logo default', async () => {
@@ -132,7 +132,7 @@ describe('MediaResolverAdapter (Composite)', () => {
it('should resolve system-default references', async () => {
const ref = MediaReference.createSystemDefault('avatar', 'male');
const url = await resolver.resolve(ref);
expect(url).toBe('/media/default/male-default-avatar.png');
expect(url).toBe('/media/default/male-default-avatar');
});
it('should resolve generated references', async () => {
@@ -181,11 +181,11 @@ describe('Integration: End-to-End Resolution', () => {
const testCases = [
{
ref: MediaReference.createSystemDefault('avatar', 'male'),
expected: '/media/default/male-default-avatar.png'
expected: '/media/default/male-default-avatar'
},
{
ref: MediaReference.createSystemDefault('avatar', 'female'),
expected: '/media/default/female-default-avatar.png'
expected: '/media/default/female-default-avatar'
},
{
ref: MediaReference.createSystemDefault('logo'),

View File

@@ -152,7 +152,7 @@ describe('NotificationOrmMapper', () => {
entity.channel = 'in_app';
entity.status = 'action_required';
entity.urgency = 'modal';
entity.data = { protestId: 'protest-789', deadline: '2025-01-02T00:00:00.000Z' };
entity.data = { protestId: 'protest-789', deadline: new Date('2025-01-02T00:00:00.000Z') };
entity.actionUrl = null;
entity.actions = [{ label: 'Submit Defense', type: 'primary', href: '/defense' }];
entity.requiresResponse = true;