File tree Expand file tree Collapse file tree 5 files changed +29
-8
lines changed Expand file tree Collapse file tree 5 files changed +29
-8
lines changed Original file line number Diff line number Diff line change @@ -18,6 +18,7 @@ export class AuthService {
1818 if ( match ) {
1919 const payload = { email : user . email , userId : user . _id } ;
2020 const access_token = await this . jwtService . signAsync ( payload ) ;
21+ const tokens = await this . getTokens ( user ) ;
2122 return {
2223 access_token
2324 } ;
Original file line number Diff line number Diff line change 11import { Prop , Schema , SchemaFactory } from '@nestjs/mongoose' ;
22import { HydratedDocument , now } from 'mongoose' ;
33
4- export type UserDocument = HydratedDocument < RefresToken > ;
4+ export type RefresTokenDocument = HydratedDocument < RefresToken > ;
55
66@Schema ( { timestamps : true } )
77export class RefresToken {
@@ -17,4 +17,4 @@ export class RefresToken {
1717 updatedAt : Date ;
1818}
1919
20- export const UserSchema = SchemaFactory . createForClass ( RefresToken ) ;
20+ export const RefresTokenSchema = SchemaFactory . createForClass ( RefresToken ) ;
Original file line number Diff line number Diff line change @@ -3,9 +3,11 @@ import { MongooseModule } from '@nestjs/mongoose';
33import { UserController } from './users.controller' ;
44import { UserService } from './users.service' ;
55import { User , UserSchema } from './schemas/user.schema' ;
6+ import { RefresToken , RefresTokenSchema } from './schemas/refreshtoken.schema' ;
67
78@Module ( {
8- imports : [ MongooseModule . forFeature ( [ { name : User . name , schema : UserSchema } ] ) ] ,
9+ imports : [ MongooseModule . forFeature ( [ { name : User . name , schema : UserSchema } ,
10+ { name : RefresToken . name , schema : RefresTokenSchema } ] ) ] ,
911 controllers : [ UserController ] ,
1012 providers : [ UserService ] ,
1113 exports : [ UserService ] ,
Original file line number Diff line number Diff line change @@ -55,6 +55,16 @@ describe('UserService', () => {
5555 exec : jest . fn ( ) ,
5656 } ,
5757 } ,
58+ {
59+ provide : getModelToken ( 'RefresToken' ) ,
60+ useValue : {
61+ new : jest . fn ( ) . mockResolvedValue ( mockUser ) ,
62+ constructor : jest . fn ( ) . mockResolvedValue ( mockUser ) ,
63+ find : jest . fn ( ) ,
64+ create : jest . fn ( ) ,
65+ exec : jest . fn ( ) ,
66+ } ,
67+ }
5868 ] ,
5969 } ) . compile ( ) ;
6070
@@ -70,16 +80,16 @@ describe('UserService', () => {
7080 jest . spyOn ( model , 'find' ) . mockReturnValue ( {
7181 exec : jest . fn ( ) . mockResolvedValueOnce ( mockResponse ) ,
7282 } as any ) ;
73- const cats = await service . findAll ( ) ;
74- expect ( cats ) . toEqual ( mockResponse ) ;
83+ const user = await service . findAll ( ) ;
84+ expect ( user ) . toEqual ( mockResponse ) ;
7585 } ) ;
7686
7787 it ( 'should insert a new user' , async ( ) => {
7888 jest . spyOn ( model , 'create' ) . mockImplementationOnce ( ( ) =>
7989 Promise . resolve ( mockUser as any ) ,
8090 ) ;
81- const newCat = await service . create ( mockUser ) ;
82- expect ( newCat ) . toEqual ( mockUser ) ;
91+ const newuser = await service . create ( mockUser ) ;
92+ expect ( newuser ) . toEqual ( mockUser ) ;
8393 } ) ;
8494} ) ;
8595
Original file line number Diff line number Diff line change @@ -3,12 +3,15 @@ import { InjectModel } from '@nestjs/mongoose';
33import { Model , Types } from 'mongoose' ;
44import { CreateUserDto } from './dto/create-user.dto' ;
55import { User } from './schemas/user.schema' ;
6+ import { RefresToken } from './schemas/refreshtoken.schema' ;
67import * as bcrypt from 'bcrypt' ;
78import { userData } from 'src/interface/common' ;
89
910@Injectable ( )
1011export class UserService {
11- constructor ( @InjectModel ( User . name ) private readonly userModel : Model < User > ) { }
12+ constructor ( @InjectModel ( User . name ) private readonly userModel : Model < User > ,
13+ @InjectModel ( RefresToken . name ) private readonly RefresTokenModel : Model < RefresToken >
14+ ) { }
1215
1316 async create ( createUserDto : CreateUserDto ) : Promise < CreateUserDto > {
1417 const saltOrRounds = 10 ;
@@ -39,4 +42,9 @@ export class UserService {
3942 async updateOne ( userId : Types . ObjectId | String , data : userData ) {
4043 await this . userModel . updateOne ( { _id :userId } , data ) ;
4144 }
45+
46+ async createRefreshToken ( createUserDto : CreateUserDto ) : Promise < Boolean > {
47+ const createduUser = await this . RefresTokenModel . create ( createUserDto ) ;
48+ return true ;
49+ }
4250}
You can’t perform that action at this time.
0 commit comments