import { MusicService, Credentials, AuthSuccess, AuthFailure, } from "../src/music_service"; export class InMemoryMusicService implements MusicService { users: Record = {}; login({ username, password }: Credentials): AuthSuccess | AuthFailure { if ( username != undefined && password != undefined && this.users[username] == password ) { return { authToken: "token123", userId: username, nickname: username }; } else { return { message: `Invalid user:${username}` }; } } hasUser(credentials: Credentials) { this.users[credentials.username] = credentials.password; } hasNoUsers() { this.users = {}; } clear() { this.users = {}; } }