diff --git a/awx/ui_next/src/util/useSelected.test.jsx b/awx/ui_next/src/util/useSelected.test.jsx index 14777b6a85..b59f2b1c6f 100644 --- a/awx/ui_next/src/util/useSelected.test.jsx +++ b/awx/ui_next/src/util/useSelected.test.jsx @@ -19,6 +19,8 @@ describe('useSelected hook', () => { let isAllSelected; let handleSelect; let setSelected; + let selectAll; + let clearSelected; test('should return expected initial values', () => { testHook(() => { @@ -72,4 +74,51 @@ describe('useSelected hook', () => { expect(selected).toEqual([]); expect(isAllSelected).toEqual(false); }); + + test('should return selectAll', () => { + testHook(() => { + ({ + selected, + isAllSelected, + handleSelect, + setSelected, + selectAll, + } = useSelected(array)); + }); + + act(() => { + selectAll(true); + }); + expect(isAllSelected).toEqual(true); + expect(selected).toEqual(array); + + act(() => { + selectAll(false); + }); + expect(isAllSelected).toEqual(false); + expect(selected).toEqual([]); + }); + + test('should return clearSelected', () => { + testHook(() => { + ({ + selected, + isAllSelected, + handleSelect, + setSelected, + selectAll, + clearSelected, + } = useSelected(array)); + }); + + act(() => { + selectAll(true); + }); + + act(() => { + clearSelected(); + }); + expect(isAllSelected).toEqual(false); + expect(selected).toEqual([]); + }); });