Skip to content

Commit 8bd8587

Browse files
Add description and tags fields to event handlers (#79)
* Add description and tags fields to event handlers
1 parent 2e1dfe3 commit 8bd8587

4 files changed

Lines changed: 126 additions & 6 deletions

File tree

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import { expect, describe, test } from "@jest/globals";
2+
import { orkesConductorClient } from "../../../orkes";
3+
4+
describe("EventResourceService", () => {
5+
test("Should create an event handler with description and tags and then delete it", async () => {
6+
const orkesClient = await orkesConductorClient({ useEnvVars: true });
7+
const eventApi = orkesClient.eventResource;
8+
9+
const [eventName, event, eventDescription, eventTagKey, eventTagValue] = [
10+
"jsSdkTestEventName",
11+
"jsSdkTest:eventHandler:1",
12+
"jsSdkTestDescription",
13+
"jsSdkTestTagKey",
14+
"jsSdkTestTagValue",
15+
];
16+
17+
const eventHandler = {
18+
name: eventName,
19+
event: event,
20+
active: true,
21+
actions: [],
22+
description: eventDescription,
23+
tags: [{ key: eventTagKey, value: eventTagValue }],
24+
};
25+
26+
await eventApi.addEventHandler(eventHandler);
27+
const eventHandlers = await eventApi.getEventHandlersForEvent(event);
28+
29+
expect(eventHandlers.length).toEqual(1);
30+
expect(eventHandlers[0].description).toEqual(eventDescription);
31+
expect(eventHandlers[0].tags).toEqual([
32+
{ key: eventTagKey, value: eventTagValue },
33+
]);
34+
35+
await eventApi.removeEventHandlerStatus(eventName);
36+
const eventHandlersAfterRemove = await eventApi.getEventHandlersForEvent(
37+
event
38+
);
39+
40+
expect(eventHandlersAfterRemove.length).toEqual(0);
41+
});
42+
});
Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,19 @@
1+
/* generated using openapi-typescript-codegen -- do not edit */
12
/* istanbul ignore file */
23
/* tslint:disable */
34
/* eslint-disable */
4-
55
import type { Action } from './Action';
6-
6+
import type { Tag } from './Tag';
77
export type EventHandler = {
8-
name: string;
9-
event: string;
10-
condition?: string;
11-
actions: Array<Action>;
8+
actions?: Array<Action>;
129
active?: boolean;
10+
condition?: string;
11+
createdBy?: string;
12+
description?: string;
1313
evaluatorType?: string;
14+
event?: string;
15+
name?: string;
16+
orgId?: string;
17+
tags?: Array<Tag>;
1418
};
1519

src/common/open-api/models/Tag.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
/* generated using openapi-typescript-codegen -- do not edit */
2+
/* istanbul ignore file */
3+
/* tslint:disable */
4+
/* eslint-disable */
5+
export type Tag = {
6+
key?: string;
7+
/**
8+
* @deprecated
9+
*/
10+
type?: string;
11+
value?: string;
12+
};

src/common/open-api/services/EventResourceService.ts

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import type { EventHandler } from '../models/EventHandler';
55

66
import type { CancelablePromise } from '../core/CancelablePromise';
77
import type { BaseHttpRequest } from '../core/BaseHttpRequest';
8+
import { Tag } from '../models/Tag';
89

910
export class EventResourceService {
1011

@@ -176,4 +177,65 @@ export class EventResourceService {
176177
});
177178
}
178179

180+
/**
181+
* Delete a tag for event handler
182+
* @param name
183+
* @param requestBody
184+
* @returns any OK
185+
* @throws ApiError
186+
*/
187+
public deleteTagForEventHandler(
188+
name: string,
189+
requestBody: Array<Tag>,
190+
): CancelablePromise<any> {
191+
return this.httpRequest.request({
192+
method: 'DELETE',
193+
url: '/event/{name}/tags',
194+
path: {
195+
'name': name,
196+
},
197+
body: requestBody,
198+
mediaType: 'application/json',
199+
});
200+
}
201+
202+
/**
203+
* Get tags by event handler
204+
* @param name
205+
* @returns Tag OK
206+
* @throws ApiError
207+
*/
208+
public getTagsForEventHandler(
209+
name: string,
210+
): CancelablePromise<Array<Tag>> {
211+
return this.httpRequest.request({
212+
method: 'GET',
213+
url: '/event/{name}/tags',
214+
path: {
215+
'name': name,
216+
},
217+
});
218+
}
219+
220+
/**
221+
* Put a tag to event handler
222+
* @param name
223+
* @param requestBody
224+
* @returns any OK
225+
* @throws ApiError
226+
*/
227+
public putTagForEventHandler(
228+
name: string,
229+
requestBody: Array<Tag>,
230+
): CancelablePromise<any> {
231+
return this.httpRequest.request({
232+
method: 'PUT',
233+
url: '/event/{name}/tags',
234+
path: {
235+
'name': name,
236+
},
237+
body: requestBody,
238+
mediaType: 'application/json',
239+
});
240+
}
179241
}

0 commit comments

Comments
 (0)