feat: add unit tests for tenant, guarantor, lease card, dashboard, session, theme, and workspace services

This commit is contained in:
nessar committed 2026-08-17 14:18:15 +02:00
1 parent 74a77f2d2b
commit 181410e28f
8 files changed
+514 -2

No files matched your search

@@ -0,0 +1,26 @@
import { TestBed } from '@angular/core/testing';
import { LeaseCard } from './lease-card';
describe('LeaseCard', () => {
it('resolves apartment, tenants, and every status label', () => {
const fixture = TestBed.createComponent(LeaseCard);
fixture.componentRef.setInput('apartments', [{ id: 'apartment-1', name: 'T2', address: '', purchasePrice: 0, description: '' }]);
fixture.componentRef.setInput('tenants', [
{ id: 'tenant-1', firstName: 'Camille', lastName: 'Martin', email: '', phone: '', address: '' },
{ id: 'tenant-2', firstName: 'Alex', lastName: 'Durand', email: '', phone: '', address: '' },
]);
fixture.componentRef.setInput('lease', {
apartmentId: 'apartment-1', tenantIds: ['tenant-1', 'missing', 'tenant-2'], guarantors: [], startDate: '', endDate: '', monthlyRent: 0, monthlyCharges: 0, securityDeposit: 0, status: 'DRAFT',
});
const component = fixture.componentInstance;
expect(component.apartmentName()).toBe('T2');
expect(component.tenantNames()).toBe('Camille Martin, Alex Durand');
expect(component.statusLabel()).toBe('Bail en préparation');
fixture.componentRef.setInput('lease', { ...component.lease(), status: 'ACTIVE' });
expect(component.statusLabel()).toBe('Bail actif');
fixture.componentRef.setInput('lease', { ...component.lease(), apartmentId: 'missing', status: 'ARCHIVED' });
expect(component.apartmentName()).toBe('Bien inconnu');
expect(component.statusLabel()).toBe('Bail archivé');
});
});