Completed
Push — master ( 725f7d...ca7f33 )
by
unknown
22s queued 15s
created

JohnFactory.finalize   A

Complexity

Conditions 1

Size

Total Lines 4
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 4
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
1
import { Factory } from '@concepta/typeorm-seeding';
2
import { faker } from '@faker-js/faker';
3
import { User, UserRole } from 'src/Domain/HumanResource/User/User.entity';
4
import { UserAdministrativeFactory } from './UserAdministrativeFactory';
5
6
export class UserFactory extends Factory<User> {
7
  protected async entity(): Promise<User> {
8
    const user = new User(
9
      faker.name.firstName('female'),
10
      faker.name.lastName('female'),
11
      faker.internet.email(),
12
      '$argon2i$v=19$m=4096,t=3,p=1$slHh/xhoh8SvIjApBHSZnA$hqsry11DeWbNYsFnzADPkYOP2WQrf0yqDXGC3xjSX9A',
13
      '$argon2i$v=19$m=4096,t=3,p=1$slHh/xhoh8SvIjApBHSZnA$hqsry11DeWbNYsFnzADPkYOP2WQrf0yqDXGC3xjSX9A',
14
      UserRole.COOPERATOR
15
    );
16
    return user;
17
  }
18
19
  protected async finalize(entity: User): Promise<void> {
20
    entity.userAdministrative = await this.factory(
21
      UserAdministrativeFactory
22
    ).create();
23
  }
24
}
25
26
export class JohnFactory extends Factory<User> {
27
  protected async entity(): Promise<User> {
28
    const user = new User(
29
      'john',
30
      'doe',
31
      '[email protected]',
32
      '$argon2i$v=19$m=4096,t=3,p=1$slHh/xhoh8SvIjApBHSZnA$hqsry11DeWbNYsFnzADPkYOP2WQrf0yqDXGC3xjSX9A',
33
      '$argon2i$v=19$m=4096,t=3,p=1$slHh/xhoh8SvIjApBHSZnA$hqsry11DeWbNYsFnzADPkYOP2WQrf0yqDXGC3xjSX9A',
34
      UserRole.COOPERATOR
35
    );
36
    return user;
37
  }
38
39
  protected async finalize(entity: User): Promise<void> {
40
    entity.userAdministrative = await this.factory(
41
      UserAdministrativeFactory
42
    ).create();
43
  }
44
}
45