diff --git a/src/api/services/v3/cmp/ResourceService.js b/src/api/services/v3/cmp/ResourceService.js new file mode 100644 index 0000000..7c2f27b --- /dev/null +++ b/src/api/services/v3/cmp/ResourceService.js @@ -0,0 +1,7 @@ +import crud from "../../../crudOperations" + +export default { + getResourceTypes: async () => await crud.getItemByEndpoint('v3/cmp/resourceTypes', {page_size: 100}), + getResources: async () => await crud.getItemByEndpoint('v3/cmp/resources', {page_size: 100}), + getServerSummary: async () => await crud.getItemByEndpoint('v3/cmp/serverSummary', {page_size: 100}) +} diff --git a/src/api/services/v3/cmp/ResourceService.test.js b/src/api/services/v3/cmp/ResourceService.test.js new file mode 100644 index 0000000..ffa2fdb --- /dev/null +++ b/src/api/services/v3/cmp/ResourceService.test.js @@ -0,0 +1,17 @@ +import crud from "../../../crudOperations"; +import ResourceService from "./ResourceService"; + +describe('ResourceService', () => { + it('fetching available resources', async () => { + jest.spyOn(crud, 'getItemByEndpoint').mockResolvedValue('dummyResponse') + const response = await ResourceService.getResources() + expect(crud.getItemByEndpoint).toBeCalledWith('v3/cmp/resources/') + expect(response).toBe('dummyResponse') + }) + it('fetching available resource types', async () => { + jest.spyOn(crud, 'getItems').mockResolvedValue('dummyResponse') + const response = await ResourceService.getResourceTypes() + expect(crud.getItems).toBeCalledWith('v3/cmp/resourceTypes') + expect(response).toBe('dummyResponse') + }) +}) diff --git a/src/index.js b/src/index.js index c00cae2..ffacca0 100644 --- a/src/index.js +++ b/src/index.js @@ -5,6 +5,7 @@ import EulaService from './api/services/v3/cmp/EulaService' import GroupsService from './api/services/v3/cmp/GroupsService' import LicensingService from './api/services/v3/cmp/LicensingService' import ProductInfoService from './api/services/v3/cmp/ProductInfoService' +import ResourceService from './api/services/v3/cmp/ResourceService' import UiExtensionComponentsService from './api/services/v3/cmp/UiExtensionComponentsService' import UserService from './api/services/v3/cmp/UserService' import DashboardService from './api/services/v3/DashboardService' @@ -26,7 +27,8 @@ export const createApi = () => { licensing: LicensingService, productInfo: ProductInfoService, uiExtensions: UiExtensionComponentsService, - users: UserService + users: UserService, + resources: ResourceService }, dashboard: DashboardService }