Skip to content
This repository was archived by the owner on Feb 6, 2024. It is now read-only.

Commit b95c435

Browse files
fix(#367): missing mock api get
1 parent 966b253 commit b95c435

File tree

3 files changed

+40
-33
lines changed

3 files changed

+40
-33
lines changed

studio/src/app/services/api/user/api.user.mock.service.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,13 @@ export class ApiUserMockService extends ApiUserService {
2626
});
2727
}
2828

29+
// @Override
30+
get(_userId: string): Promise<ApiUser> {
31+
return new Promise<ApiUser>(async (resolve) => {
32+
resolve(undefined);
33+
});
34+
}
35+
2936
private createTestUserInfo(apiUserInfo: ApiUserInfo | ApiUser): Promise<ApiUser> {
3037
return new Promise<ApiUser>((resolve) => {
3138
const testUser: ApiUser = {

studio/src/app/services/api/user/api.user.prod.service.tsx

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,4 +66,35 @@ export class ApiUserProdService extends ApiUserService {
6666
});
6767
}
6868

69+
// @Override
70+
get(userId: string): Promise<ApiUser> {
71+
return new Promise<ApiUser>(async (resolve, reject) => {
72+
try {
73+
const config: EnvironmentDeckDeckGoConfig = EnvironmentConfigService.getInstance().get('deckdeckgo');
74+
75+
const rawResponse: Response = await fetch(config.apiUrl + `/users/${userId}`, {
76+
method: 'GET',
77+
headers: {
78+
'Accept': 'application/json',
79+
'Content-Type': 'application/json'
80+
}
81+
});
82+
83+
if (!rawResponse || !rawResponse.ok) {
84+
// 404 if not found
85+
resolve(null);
86+
return;
87+
}
88+
89+
const persistedUser: ApiUser = await rawResponse.json();
90+
91+
this.apiUserSubject.next(persistedUser);
92+
93+
resolve(persistedUser);
94+
} catch (err) {
95+
reject(err);
96+
}
97+
});
98+
}
99+
69100
}

studio/src/app/services/api/user/api.user.service.tsx

Lines changed: 2 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,6 @@ import {Observable, ReplaySubject} from 'rxjs';
33
import {ApiUser, ApiUserInfo} from '../../../models/api/api.user';
44
import {AuthUser} from '../../../models/auth/auth.user';
55

6-
import {EnvironmentDeckDeckGoConfig} from '../../core/environment/environment-config';
7-
import {EnvironmentConfigService} from '../../core/environment/environment-config.service';
8-
96
export abstract class ApiUserService {
107

118
protected apiUserSubject: ReplaySubject<ApiUser> = new ReplaySubject(1);
@@ -14,6 +11,8 @@ export abstract class ApiUserService {
1411

1512
abstract delete(userId: string, token: string): Promise<void>;
1613

14+
abstract get(userId: string): Promise<ApiUser>;
15+
1716
signIn(authUser: AuthUser): Promise<void> {
1817
return new Promise<void>(async (resolve) => {
1918
if (!authUser) {
@@ -59,36 +58,6 @@ export abstract class ApiUserService {
5958
return this.query(apiUser, token, `/users/${userId}`, 'PUT');
6059
}
6160

62-
private get(userId: string): Promise<ApiUser> {
63-
return new Promise<ApiUser>(async (resolve, reject) => {
64-
try {
65-
const config: EnvironmentDeckDeckGoConfig = EnvironmentConfigService.getInstance().get('deckdeckgo');
66-
67-
const rawResponse: Response = await fetch(config.apiUrl + `/users/${userId}`, {
68-
method: 'GET',
69-
headers: {
70-
'Accept': 'application/json',
71-
'Content-Type': 'application/json'
72-
}
73-
});
74-
75-
if (!rawResponse || !rawResponse.ok) {
76-
// 404 if not found
77-
resolve(null);
78-
return;
79-
}
80-
81-
const persistedUser: ApiUser = await rawResponse.json();
82-
83-
this.apiUserSubject.next(persistedUser);
84-
85-
resolve(persistedUser);
86-
} catch (err) {
87-
reject(err);
88-
}
89-
});
90-
}
91-
9261
watch(): Observable<ApiUser> {
9362
return this.apiUserSubject.asObservable();
9463
}

0 commit comments

Comments
 (0)