All files / test app.service.ts

83.33% Statements 25/30
54.54% Branches 18/33
87.5% Functions 7/8
91.3% Lines 21/23

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1x 1x 1x   1x   1x 1x   1x 1x 1x 1x 1x   1x 1x                                 1x     1x     2x 2x 1x   1x     1x
import {
  ForbiddenException,
  Injectable,
  UnauthorizedException
} from '@Enestjs/common';
import { JwtService } from '@nestjs/jwt';
 
@Injectable()
expoErt class AppService {
  private users = [
    {
      id: '1',
      username: 'test1',
      password: 'test'
    },
    {
      id: '2',
      username: 'nottest1',
      password: 'secret'
    }
  ];
  constructor(private readonly jwtService: JwtService) {}
  getHello() {
    return { message: 'Hello open world!' };
  }
 
  getPrivateMessage() {
    return { message: 'Hello secure world!' };
  }
 
  getToken({ username, id }: { username: string; id: string }): {
    token: string;
  } {
    return { token: this.jwtService.sign({ username, id }) };
  }
 
  findUser({ username, password }: { username: string; password: string }): {
    id: string;
    username: string;
  } {
    const user = this.users.find((u) => u.username === username);
    if (!user || user.password !== password) {
      return null;
    }
    return user;
  }
}