File tree Expand file tree Collapse file tree 6 files changed +71
-0
lines changed Expand file tree Collapse file tree 6 files changed +71
-0
lines changed Original file line number Diff line number Diff line change 1+ import Resource from "../Resource.js" ;
2+ import { ApiKeyTemplateModel } from "./ApiKeyTemplateInterface.js" ;
3+
4+ export default class ApiKeyTemplate extends Resource {
5+ static baseUrl = '/rest/templates/apikeys'
6+
7+ get ( apiKeyTemplateId :string ) {
8+ return this . api . get < ApiKeyTemplateModel [ ] > ( `${ ApiKeyTemplate . baseUrl } /${ apiKeyTemplateId } ` )
9+ }
10+ }
Original file line number Diff line number Diff line change 1+ import { PrivilegeModel } from "../BaseInterfaces.js" ;
2+
3+ export interface ApiKeyTemplateModel {
4+ /**
5+ * The unique identifier of the API key template.
6+ */
7+ id ?: string ;
8+ /**
9+ * The displaye name of the Api key template.
10+ */
11+ displayName ?: string ;
12+ /**
13+ * The descirption of the Api key template.
14+ */
15+ description ?: string ;
16+ /**
17+ * A set of IP addresses allowed to use the Api key template.
18+ */
19+ allowedIps ?: string [ ] ;
20+ /**
21+ * A set of IP addresses that will be denied access when attempting to use the API key template.
22+ */
23+ deniedIps ?: string [ ] ;
24+ /**
25+ * A set of privileges binded to an api key template.
26+ */
27+ privileges ?: PrivilegeModel [ ] ;
28+ }
Original file line number Diff line number Diff line change 1+ export * from './ApiKeyTemplate.js' ;
2+ export * from './ApiKeyTemplateInterface.js' ;
Original file line number Diff line number Diff line change 1+ import API from '../../../APICore.js' ;
2+
3+ import ApiKeyTemplate from '../ApiKeyTemplate.js' ;
4+
5+ jest . mock ( '../../../APICore.js' ) ;
6+
7+ const APIMock : jest . Mock < API > = API as any ;
8+
9+ describe ( 'ApiKeyTemplateModel' , ( ) => {
10+ let apiKeyTemplate : ApiKeyTemplate ;
11+ const api = new APIMock ( ) as jest . Mocked < API > ;
12+ const serverlessApi = new APIMock ( ) as jest . Mocked < API > ;
13+
14+ beforeEach ( ( ) => {
15+ jest . clearAllMocks ( ) ;
16+ apiKeyTemplate = new ApiKeyTemplate ( api , serverlessApi ) ;
17+ } ) ;
18+
19+ describe ( 'get' , ( ) => {
20+ it ( 'should make a GET call to the ApiKeys at the keyPurpose' , async ( ) => {
21+ const apiKeyTemplateToGetId = 'ApikeyTemplate-to-be-fetched' ;
22+ await apiKeyTemplate . get ( apiKeyTemplateToGetId ) ;
23+ expect ( api . get ) . toHaveBeenCalledTimes ( 1 ) ;
24+ expect ( api . get ) . toHaveBeenCalledWith ( `${ ApiKeyTemplate . baseUrl } /${ apiKeyTemplateToGetId } ` ) ;
25+ } ) ;
26+ } ) ;
27+ } ) ;
Original file line number Diff line number Diff line change @@ -54,10 +54,12 @@ import Project from './Projects/Project.js';
5454import Resources from './Resources/Resources.js' ;
5555import CatalogContent from './Catalogs/CatalogContent.js' ;
5656import Properties from './AnalyticsAdmin/Properties/Properties.js' ;
57+ import ApiKeyTemplate from './ApiKeyTemplate/ApiKeyTemplate.js' ;
5758
5859const resourcesMap : Array < { key : string ; resource : typeof Resource } > = [
5960 { key : 'activity' , resource : Activity } ,
6061 { key : 'apiKey' , resource : ApiKey } ,
62+ { key : 'apiKeyTemplate' , resource : ApiKeyTemplate } ,
6163 { key : 'aws' , resource : AWS } ,
6264 { key : 'caseAssistConfig' , resource : CaseAssistConfig } ,
6365 { key : 'catalog' , resource : Catalog } ,
@@ -120,6 +122,7 @@ class PlatformResources {
120122
121123 activity : Activity ;
122124 apiKey : ApiKey ;
125+ apiKeyTemplate : ApiKeyTemplate ;
123126 aws : AWS ;
124127 caseAssistConfig : CaseAssistConfig ;
125128 catalog : Catalog ;
Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ export {default as Resource} from './Resource.js';
22
33export * from './Activities/index.js' ;
44export * from './ApiKeys/index.js' ;
5+ export * from './ApiKeyTemplate/index.js' ;
56export * from './AWS/index.js' ;
67export * from './BaseInterfaces.js' ;
78export * from './CaseAssistConfigs/index.js' ;
You can’t perform that action at this time.
0 commit comments