Files
trouvetonprofile/src/app/testing/domain/profiles/fake-profile.repository.ts
2025-12-04 12:42:06 +01:00

25 lines
874 B
TypeScript

import { Profile, ProfilePaginated } from '@app/domain/profiles/profile.model';
import { mockProfilePaginated, mockProfiles } from '@app/testing/profile.mock';
import { ProfileRepository } from '@app/domain/profiles/profile.repository';
import { Observable, of } from 'rxjs';
export class FakeProfileRepository implements ProfileRepository {
list(): Observable<ProfilePaginated> {
return of(mockProfilePaginated);
}
getById(profileId: string): Observable<Profile> {
const profile = mockProfiles.find((p) => p.utilisateur === profileId) ?? ({} as Profile);
return of(profile);
}
create(profile: Profile): Observable<Profile> {
return of(profile);
}
update(id: string, data: Partial<Profile>): Observable<Profile> {
const existing = mockProfiles.find((p) => p.id === id) ?? mockProfiles[0];
return of({ ...existing, ...data });
}
}