X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/1514f6a2ae8103f75f08034299115ad751d8a785..79f3533ad0df48c8d6083d5c34f9b7f419173afe:/src/views-components/search-bar/search-bar-view.test.tsx diff --git a/src/views-components/search-bar/search-bar-view.test.tsx b/src/views-components/search-bar/search-bar-view.test.tsx index d5330490d2..c133e03bb9 100644 --- a/src/views-components/search-bar/search-bar-view.test.tsx +++ b/src/views-components/search-bar/search-bar-view.test.tsx @@ -11,7 +11,7 @@ import * as Adapter from 'enzyme-adapter-react-16'; configure({ adapter: new Adapter() }); -describe("", () => { +describe("", () => { jest.useFakeTimers(); @@ -21,42 +21,9 @@ describe("", () => { onSearch = jest.fn(); }); - describe("on submit", () => { - it("calls onSearch with initial value passed via props", () => { - const searchBar = mount(); - searchBar.find("form").simulate("submit"); - expect(onSearch).toBeCalledWith("initial value"); - }); - - it("calls onSearch with current value", () => { - const searchBar = mount(); - searchBar.find("input").simulate("change", { target: { value: "current value" } }); - searchBar.find("form").simulate("submit"); - expect(onSearch).toBeCalledWith("current value"); - }); - - it("calls onSearch with new value passed via props", () => { - const searchBar = mount(); - searchBar.find("input").simulate("change", { target: { value: "current value" } }); - searchBar.setProps({ value: "new value" }); - searchBar.find("form").simulate("submit"); - expect(onSearch).toBeCalledWith("new value"); - }); - - it("cancels timeout set on input value change", () => { - const searchBar = mount(); - searchBar.find("input").simulate("change", { target: { value: "current value" } }); - searchBar.find("form").simulate("submit"); - jest.runTimersToTime(1000); - expect(onSearch).toHaveBeenCalledTimes(1); - expect(onSearch).toBeCalledWith("current value"); - }); - - }); - describe("on input value change", () => { it("calls onSearch after default timeout", () => { - const searchBar = mount(); + const searchBar = mount(); searchBar.find("input").simulate("change", { target: { value: "current value" } }); expect(onSearch).not.toBeCalled(); jest.runTimersToTime(DEFAULT_SEARCH_DEBOUNCE); @@ -64,7 +31,7 @@ describe("", () => { }); it("calls onSearch after the time specified in props has passed", () => { - const searchBar = mount(); + const searchBar = mount(); searchBar.find("input").simulate("change", { target: { value: "current value" } }); jest.runTimersToTime(1000); expect(onSearch).not.toBeCalled(); @@ -73,7 +40,7 @@ describe("", () => { }); it("calls onSearch only once after no change happened during the specified time", () => { - const searchBar = mount(); + const searchBar = mount(); searchBar.find("input").simulate("change", { target: { value: "current value" } }); jest.runTimersToTime(500); searchBar.find("input").simulate("change", { target: { value: "changed value" } }); @@ -82,7 +49,7 @@ describe("", () => { }); it("calls onSearch again after the specified time has passed since previous call", () => { - const searchBar = mount(); + const searchBar = mount(); searchBar.find("input").simulate("change", { target: { value: "current value" } }); jest.runTimersToTime(500); searchBar.find("input").simulate("change", { target: { value: "intermediate value" } }); @@ -98,15 +65,18 @@ describe("", () => { }); const mockSearchProps = () => ({ - value: "current value", - onSearch: jest.fn(), - debounce: 1000, currentView: '', open: true, onSetView: jest.fn(), openView: jest.fn(), loseView: jest.fn(), closeView: jest.fn(), + saveRecentQuery: jest.fn(), + loadRecentQueries: () => ['test'], saveQuery: jest.fn(), - loadQueries: () => ['test'] + deleteSavedQuery: jest.fn(), + openSearchView: jest.fn(), + editSavedQuery: jest.fn(), + navigateTo: jest.fn(), + searchDataOnEnter: jest.fn() }); \ No newline at end of file