Files
teamwallet/myteamwallet_frontend/src/app/modules/auth.service.spec.ts
Bastian Wagner 6bea4f766a first commit
2026-07-31 21:02:47 +02:00

38 lines
1.2 KiB
TypeScript

import { HttpClient } from '@angular/common/http';
import { TestBed } from '@angular/core/testing';
import { of } from 'rxjs';
import { AuthService } from './auth.service';
describe('AuthService', () => {
let service: AuthService;
const mockHttp = jasmine.createSpyObj('HttpClient', ['post']);
mockHttp.post.and.returnValue(of({
token: 'token',
user: {id: 1, email: 'mail', firstName: 'first', lastName: 'last'}
}))
beforeEach(() => {
TestBed.configureTestingModule({
imports: [],
providers: [{ provide: HttpClient, useValue: mockHttp }]
});
service = TestBed.inject(AuthService);
});
it('should be created', () => {
expect(service).toBeTruthy();
});
it('should log in', async () => {
expect(service['authInfoSubject'].value).toBeNull();
const success = await service.login('mail', 'passwort123');
expect(success).toBeTrue();
expect(service['authInfoSubject'].value).not.toBeNull();
expect(service['authInfoSubject'].value.id).toBe(1);
expect(service['authInfoSubject'].value.email).toEqual('mail');
expect(service['authInfoSubject'].value.firstName).toEqual('first');
expect(service['authInfoSubject'].value.lastName).toEqual('last');
})
});