Apply wrapped unionize
[arvados.git] / src / store / collections / creator / collection-creator-reducer.test.ts
index df2c36280212b6730235d068134bda236e2eca41..5aa9dcfe5a86f6c6cc51f6bf987f1ad42bacb6d0 100644 (file)
@@ -1,3 +1,33 @@
 // Copyright (C) The Arvados Authors. All rights reserved.
 //
-// SPDX-License-Identifier: AGPL-3.0
\ No newline at end of file
+// SPDX-License-Identifier: AGPL-3.0
+
+import { collectionCreatorReducer } from "./collection-creator-reducer";
+import { collectionCreateActions } from "./collection-creator-action";
+
+describe('collection-reducer', () => {
+
+    it('should open collection creator dialog', () => {
+        const initialState = { opened: false, ownerUuid: "" };
+        const collection = { opened: true, ownerUuid: "" };
+
+        const state = collectionCreatorReducer(initialState, collectionCreateActions.OPEN_COLLECTION_CREATOR(initialState));
+        expect(state).toEqual(collection);
+    });
+
+    it('should close collection creator dialog', () => {
+        const initialState = { opened: true, ownerUuid: "" };
+        const collection = { opened: false, ownerUuid: "" };
+
+        const state = collectionCreatorReducer(initialState, collectionCreateActions.CLOSE_COLLECTION_CREATOR());
+        expect(state).toEqual(collection);
+    });
+
+    it('should reset collection creator dialog props', () => {
+        const initialState = { opened: true, ownerUuid: "test" };
+        const collection = { opened: false, ownerUuid: "" };
+
+        const state = collectionCreatorReducer(initialState, collectionCreateActions.CREATE_COLLECTION_SUCCESS());
+        expect(state).toEqual(collection);
+    });
+});