Add UsersModule

This contains the module, a service (which only returns mock data), a model and the UserInfo DTO.

Signed-off-by: David Mehren <git@herrmehren.de>
This commit is contained in:
David Mehren 2020-07-25 20:06:22 +02:00
parent 774f9cd8a3
commit 27126bcde1
No known key found for this signature in database
GPG key ID: 185982BA4C42B7C3
5 changed files with 64 additions and 0 deletions

View file

@ -0,0 +1,12 @@
import { IsString } from 'class-validator';
export class UserInfoDto {
@IsString()
userName: string;
@IsString()
displayName: string;
@IsString()
photo: string;
@IsString()
email: string;
}

8
src/users/user.entity.ts Normal file
View file

@ -0,0 +1,8 @@
import { Entity, PrimaryGeneratedColumn } from 'typeorm';
@Entity()
export class User {
//TODO: Still missing many properties
@PrimaryGeneratedColumn('uuid')
id: string;
}

11
src/users/users.module.ts Normal file
View file

@ -0,0 +1,11 @@
import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';
import { User } from './user.entity';
import { UsersService } from './users.service';
@Module({
imports: [TypeOrmModule.forFeature([User])],
providers: [UsersService],
exports: [UsersService],
})
export class UsersModule {}

View file

@ -0,0 +1,18 @@
import { Test, TestingModule } from '@nestjs/testing';
import { UsersService } from './users.service';
describe('UsersService', () => {
let service: UsersService;
beforeEach(async () => {
const module: TestingModule = await Test.createTestingModule({
providers: [UsersService],
}).compile();
service = module.get<UsersService>(UsersService);
});
it('should be defined', () => {
expect(service).toBeDefined();
});
});

View file

@ -0,0 +1,15 @@
import { Injectable } from '@nestjs/common';
import { UserInfoDto } from './user-info.dto';
@Injectable()
export class UsersService {
getUserInfo(): UserInfoDto {
//TODO: Use the database
return {
displayName: 'foo',
userName: 'fooUser',
email: 'foo@example.com',
photo: '',
};
}
}