Skip to content

Commit a6c4668

Browse files
committed
refactor(api): move get-user-details-for-admin usecase
in src/identity-access-management
1 parent 1a52975 commit a6c4668

File tree

5 files changed

+19
-14
lines changed

5 files changed

+19
-14
lines changed

api/lib/domain/usecases/get-user-details-for-admin.js

-5
This file was deleted.

api/src/identity-access-management/application/user/user.admin.controller.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { usecases as libUsecases } from '../../../../lib/domain/usecases/index.js';
21
import { usecases } from '../../domain/usecases/index.js';
32
import * as userDetailsForAdminSerializer from '../../infrastructure/serializers/jsonapi/user-details-for-admin.serializer.js';
43
import * as userForAdminSerializer from '../../infrastructure/serializers/jsonapi/user-for-admin.serializer.js';
@@ -59,7 +58,7 @@ const updateUserDetailsByAdmin = async function (request, h, dependencies = { us
5958
*/
6059
const getUserDetails = async function (request, h, dependencies = { userDetailsForAdminSerializer }) {
6160
const userId = request.params.id;
62-
const userDetailsForAdmin = await libUsecases.getUserDetailsForAdmin({ userId });
61+
const userDetailsForAdmin = await usecases.getUserDetailsForAdmin({ userId });
6362
return dependencies.userDetailsForAdminSerializer.serialize(userDetailsForAdmin);
6463
};
6564

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
/**
2+
* @param {Object} params
3+
* @param {string} params.userId
4+
* @param {UserRepository} userRepository
5+
* @throws UserNotFoundError
6+
* @returns {Promise<UserDetailsForAdmin>}
7+
*/
8+
const getUserDetailsForAdmin = async function ({ userId, userRepository }) {
9+
return await userRepository.getUserDetailsForAdmin(userId);
10+
};
11+
12+
export { getUserDetailsForAdmin };

api/tests/identity-access-management/unit/application/user/user.admin.controller.test.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { usecases as libUsecases } from '../../../../../lib/domain/usecases/index.js';
21
import { userAdminController } from '../../../../../src/identity-access-management/application/user/user.admin.controller.js';
32
import { User } from '../../../../../src/identity-access-management/domain/models/User.js';
43
import { usecases } from '../../../../../src/identity-access-management/domain/usecases/index.js';
@@ -168,14 +167,14 @@ describe('Unit | Identity Access Management | Application | Controller | Admin |
168167
beforeEach(function () {
169168
request = { params: { id: 123 } };
170169

171-
sinon.stub(libUsecases, 'getUserDetailsForAdmin');
170+
sinon.stub(usecases, 'getUserDetailsForAdmin');
172171
const userDetailsForAdminSerializer = { serialize: sinon.stub() };
173172
dependencies = { userDetailsForAdminSerializer };
174173
});
175174

176175
it('gets the specified user', async function () {
177176
// given
178-
libUsecases.getUserDetailsForAdmin.withArgs({ userId: 123 }).resolves('userDetail');
177+
usecases.getUserDetailsForAdmin.withArgs({ userId: 123 }).resolves('userDetail');
179178
dependencies.userDetailsForAdminSerializer.serialize.withArgs('userDetail').returns('ok');
180179

181180
// when

api/tests/unit/domain/usecases/get-user-details-for-admin_test.js api/tests/identity-access-management/unit/domain/usecases/get-user-details-for-admin_test.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
import { getUserDetailsForAdmin } from '../../../../lib/domain/usecases/get-user-details-for-admin.js';
2-
import { expect, sinon } from '../../../test-helper.js';
1+
import { getUserDetailsForAdmin } from '../../../../../src/identity-access-management/domain/usecases/get-user-details-for-admin.js';
2+
import { expect, sinon } from '../../../../test-helper.js';
33

4-
describe('Unit | UseCase | get-user-details-for-admin', function () {
4+
describe('Unit | Identity Access Management | Domain | UseCase | get-user-details-for-admin', function () {
55
let userRepository;
66

77
beforeEach(function () {
88
userRepository = { getUserDetailsForAdmin: sinon.stub() };
99
});
1010

11-
it('should get the user details in administration context', async function () {
11+
it('gets the user details in administration context', async function () {
1212
// given
1313
const userId = 1;
1414
const expectedUserDetailsForAdmin = { id: userId };

0 commit comments

Comments
 (0)