|
@@ -22,6 +22,7 @@ const mockStoreCreator: MockStoreCreator<
|
|
|
const store: MockStoreEnhanced<RootState, DispatchExts> = mockStoreCreator();
|
|
|
|
|
|
const clusterName = 'local';
|
|
|
+const topicName = 'localTopic';
|
|
|
const subject = 'test';
|
|
|
|
|
|
describe('Thunks', () => {
|
|
@@ -137,4 +138,34 @@ describe('Thunks', () => {
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
+
|
|
|
+ describe('deleteTopis', () => {
|
|
|
+ it('creates DELETE_TOPIC__SUCCESS when deleting existing topic', async () => {
|
|
|
+ fetchMock.deleteOnce(
|
|
|
+ `/api/clusters/${clusterName}/topics/${topicName}`,
|
|
|
+ 200
|
|
|
+ );
|
|
|
+ await store.dispatch(thunks.deleteTopic(clusterName, topicName));
|
|
|
+ expect(store.getActions()).toEqual([
|
|
|
+ actions.deleteTopicAction.request(),
|
|
|
+ actions.deleteTopicAction.success(topicName),
|
|
|
+ ]);
|
|
|
+ });
|
|
|
+
|
|
|
+ it('creates DELETE_TOPIC__FAILURE when deleting existing topic', async () => {
|
|
|
+ fetchMock.postOnce(
|
|
|
+ `/api/clusters/${clusterName}/topics/${topicName}`,
|
|
|
+ 404
|
|
|
+ );
|
|
|
+ try {
|
|
|
+ await store.dispatch(thunks.deleteTopic(clusterName, topicName));
|
|
|
+ } catch (error) {
|
|
|
+ expect(error.status).toEqual(404);
|
|
|
+ expect(store.getActions()).toEqual([
|
|
|
+ actions.deleteTopicAction.request(),
|
|
|
+ actions.deleteTopicAction.failure(),
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
});
|