From 27de3ebd8518986cba543662a611fea3c7c3a9a5 Mon Sep 17 00:00:00 2001
From: L4168 <L4168@student.jamk.fi>
Date: Wed, 26 Jun 2019 12:54:32 +0300
Subject: [PATCH] login exceptions

---
 src/user/user.service.ts | 90 ++++++++++++++++++++--------------------
 1 file changed, 44 insertions(+), 46 deletions(-)

diff --git a/src/user/user.service.ts b/src/user/user.service.ts
index 572e4bd..aa511e2 100644
--- a/src/user/user.service.ts
+++ b/src/user/user.service.ts
@@ -1,6 +1,6 @@
 import { Injectable, HttpException, HttpStatus } from '@nestjs/common';
-import { Repository } from "typeorm";
-import { InjectRepository } from "@nestjs/typeorm";
+import { Repository } from 'typeorm';
+import { InjectRepository } from '@nestjs/typeorm';
 
 import { PersonEntity } from './user.entity';
 import { UserDTO } from './user.dto';
@@ -9,56 +9,54 @@ import { GameDTO } from '../game/game.dto';
 
 @Injectable()
 export class UserService {
-    constructor(
-        @InjectRepository(PersonEntity)
-        private userRepository: Repository<PersonEntity>,
-        @InjectRepository(GameEntity)
-        private gameRepository: Repository<GameEntity>
-    ) { }
+  constructor(
+    @InjectRepository(PersonEntity)
+    private userRepository: Repository<PersonEntity>,
+    @InjectRepository(GameEntity)
+    private gameRepository: Repository<GameEntity>,
+  ) {}
 
-    async register(data: UserDTO) {
-        const { name } = data;
-        let user = await this.userRepository.findOne({ where: { name } });
-        if (user) {
-            throw new HttpException('User already exists', HttpStatus.BAD_REQUEST);
-        }
-        user = await this.userRepository.create(data);
-        await this.userRepository.save(user);
-        return user.tokenObject();
+  async register(data: UserDTO) {
+    const { name } = data;
+    let user = await this.userRepository.findOne({ where: { name } });
+    if (user) {
+      throw new HttpException('User already exists', HttpStatus.BAD_REQUEST);
     }
+    user = await this.userRepository.create(data);
+    await this.userRepository.save(user);
+    return user.tokenObject();
+  }
 
-    async login(data: UserDTO) {
-        try {
-            const { name, password } = data;
-            const user = await this.userRepository.findOne({ where: { name } });
-            if (!user || !(await user.comparePassword(password))) {
-                throw new HttpException('invalid password', HttpStatus.BAD_REQUEST);
-            }
-            return user.tokenObject();
-        } catch (error) {
-            throw new HttpException(error.message, HttpStatus.BAD_REQUEST);
-        }
+  async login(data: UserDTO) {
+    const { name, password } = data;
+    const user = await this.userRepository.findOne({ where: { name } });
+    if (!user) {
+      throw new HttpException('User does not exist', HttpStatus.BAD_REQUEST);
     }
-
-    // liitytään peliin
-    async joinGame(game: GameDTO, data: UserDTO) {
-        try {
-            // etsi peli valinnan mukaan ja otetaan käyttäjän rooli kyseisestä pelistä talteen
-            const role = await this.gameRepository.findOne();
-            return role;
-        } catch (error) {
-            return error.message;
-        }
+    if (!(await user.comparePassword(password))) {
+      throw new HttpException('Invalid password', HttpStatus.BAD_REQUEST);
     }
+    return user.tokenObject();
+  }
 
-    // liitytään factionii
-    async joinFaction(game: GameDTO, data: UserDTO): Promise<boolean> {
-        try {
-            // tarkistetaan factionin salasana
-            return true;
-        } catch (error) {
-            return error;
-        }
+  // liitytään peliin
+  async joinGame(game: GameDTO, data: UserDTO) {
+    try {
+      // etsi peli valinnan mukaan ja otetaan käyttäjän rooli kyseisestä pelistä talteen
+      const role = await this.gameRepository.findOne();
+      return role;
+    } catch (error) {
+      return error.message;
     }
+  }
 
+  // liitytään factionii
+  async joinFaction(game: GameDTO, data: UserDTO): Promise<boolean> {
+    try {
+      // tarkistetaan factionin salasana
+      return true;
+    } catch (error) {
+      return error;
+    }
+  }
 }
-- 
GitLab