storj.io/minio@v0.0.0-20230509071714-0cbc90f649b1/browser/app/js/objects/__tests__/PrefixContainer.test.js (about) 1 /* 2 * MinIO Cloud Storage (C) 2018 MinIO, Inc. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 import React from "react" 18 import { shallow } from "enzyme" 19 import { PrefixContainer } from "../PrefixContainer" 20 21 describe("PrefixContainer", () => { 22 it("should render without crashing", () => { 23 shallow(<PrefixContainer object={{ name: "abc/" }} />) 24 }) 25 26 it("should render ObjectItem with props", () => { 27 const wrapper = shallow(<PrefixContainer object={{ name: "abc/" }} />) 28 expect(wrapper.find("Connect(ObjectItem)").length).toBe(1) 29 expect(wrapper.find("Connect(ObjectItem)").prop("name")).toBe("abc/") 30 }) 31 32 it("should call selectPrefix when the prefix is clicked", () => { 33 const selectPrefix = jest.fn() 34 const wrapper = shallow( 35 <PrefixContainer 36 object={{ name: "abc/" }} 37 currentPrefix={"xyz/"} 38 selectPrefix={selectPrefix} 39 /> 40 ) 41 wrapper.find("Connect(ObjectItem)").prop("onClick")() 42 expect(selectPrefix).toHaveBeenCalledWith("xyz/abc/") 43 }) 44 45 it("should pass actions to ObjectItem", () => { 46 const wrapper = shallow( 47 <PrefixContainer object={{ name: "abc/" }} checkedObjectsCount={0} /> 48 ) 49 expect(wrapper.find("Connect(ObjectItem)").prop("actionButtons")).not.toBe( 50 undefined 51 ) 52 }) 53 54 it("should pass empty actions to ObjectItem when checkedObjectCount is more than 0", () => { 55 const wrapper = shallow( 56 <PrefixContainer object={{ name: "abc/" }} checkedObjectsCount={1} /> 57 ) 58 expect(wrapper.find("Connect(ObjectItem)").prop("actionButtons")).toBe( 59 undefined 60 ) 61 }) 62 })