From eff84a7d0727c458c85377543525ddb3bf3a9419 Mon Sep 17 00:00:00 2001 From: Jonathan Poltak Samosir Date: Wed, 10 Jul 2024 12:53:12 +0700 Subject: [PATCH] Fix all space picker tests apart from state.newEntryName assertions - that state changed, though it's not fully implemented yet --- .../ui/CollectionPicker/logic.test.ts | 77 +++++++------------ src/custom-lists/ui/CollectionPicker/logic.ts | 6 +- 2 files changed, 31 insertions(+), 52 deletions(-) diff --git a/src/custom-lists/ui/CollectionPicker/logic.test.ts b/src/custom-lists/ui/CollectionPicker/logic.test.ts index 67b4d12446..1e3e6b5fee 100644 --- a/src/custom-lists/ui/CollectionPicker/logic.test.ts +++ b/src/custom-lists/ui/CollectionPicker/logic.test.ts @@ -242,55 +242,39 @@ describe('SpacePickerLogic', () => { device, }) await testLogic.init() - expect(testLogic.state).toEqual( - expect.objectContaining({ - query: '', - newEntryName: '', - filteredListIds: null, - }), - ) + expect(testLogic.state.query).toEqual('') + expect(testLogic.state.newEntryName).toEqual('') + expect(testLogic.state.filteredListIds).toEqual(null) await testLogic.processEvent('searchInputChanged', { query: 'LIST Test', }) - expect(testLogic.state).toEqual( - expect.objectContaining({ - query: 'LIST Test', - newEntryName: 'LIST Test', - filteredListIds: [DATA.TEST_USER_LIST_SUGGESTIONS[0].unifiedId], - }), - ) + expect(testLogic.state.query).toEqual('LIST Test') + expect(testLogic.state.newEntryName).toEqual('LIST Test') + expect(testLogic.state.filteredListIds).toEqual([ + DATA.TEST_USER_LIST_SUGGESTIONS[0].unifiedId, + ]) await testLogic.processEvent('searchInputChanged', { query: 'non-existent', }) - expect(testLogic.state).toEqual( - expect.objectContaining({ - query: 'non-existent', - newEntryName: 'non-existent', - filteredListIds: [], - }), - ) + expect(testLogic.state.query).toEqual('non-existent') + expect(testLogic.state.newEntryName).toEqual('non-existent') + expect(testLogic.state.filteredListIds).toEqual([]) await testLogic.processEvent('searchInputChanged', { query: '' }) - expect(testLogic.state).toEqual( - expect.objectContaining({ - query: '', - newEntryName: '', - filteredListIds: null, - }), - ) + expect(testLogic.state.query).toEqual('') + expect(testLogic.state.newEntryName).toEqual('') + expect(testLogic.state.filteredListIds).toEqual(null) await testLogic.processEvent('searchInputChanged', { query: 'list test', }) - expect(testLogic.state).toEqual( - expect.objectContaining({ - query: 'list test', - newEntryName: 'list test', - filteredListIds: [DATA.TEST_USER_LIST_SUGGESTIONS[0].unifiedId], - }), - ) + expect(testLogic.state.query).toEqual('list test') + expect(testLogic.state.newEntryName).toEqual('list test') + expect(testLogic.state.filteredListIds).toEqual([ + DATA.TEST_USER_LIST_SUGGESTIONS[0].unifiedId, + ]) }) it("should be able to search for any entry when it's already selected", async ({ @@ -510,14 +494,11 @@ describe('SpacePickerLogic', () => { }) const newEntryText = 'testwerwerwerwer' - const expectDefaultState = () => - expect(testLogic.state).toEqual( - expect.objectContaining({ - query: '', - newEntryName: '', - filteredListIds: null, - }), - ) + const expectDefaultState = () => { + expect(testLogic.state.query).toEqual('') + expect(testLogic.state.newEntryName).toEqual('') + expect(testLogic.state.filteredListIds).toEqual(null) + } await testLogic.init() @@ -527,13 +508,9 @@ describe('SpacePickerLogic', () => { query: newEntryText, }) - expect(testLogic.state).toEqual( - expect.objectContaining({ - query: newEntryText, - newEntryName: newEntryText, - filteredListIds: [], - }), - ) + expect(testLogic.state.query).toEqual(newEntryText) + expect(testLogic.state.newEntryName).toEqual(newEntryText) + expect(testLogic.state.filteredListIds).toEqual([]) await testLogic.processEvent('searchInputChanged', { query: '', diff --git a/src/custom-lists/ui/CollectionPicker/logic.ts b/src/custom-lists/ui/CollectionPicker/logic.ts index 893463d2e7..3bea1bc534 100644 --- a/src/custom-lists/ui/CollectionPicker/logic.ts +++ b/src/custom-lists/ui/CollectionPicker/logic.ts @@ -349,8 +349,10 @@ export default class SpacePickerLogic extends UILogic< nextIndex = 0 } - let nextFocusedListId = visibleTreeNodes[nextIndex].unifiedId - this.emitMutation({ focusedListId: { $set: nextFocusedListId } }) + let nextFocusedListId = visibleTreeNodes[nextIndex]?.unifiedId + if (nextFocusedListId != null) { + this.emitMutation({ focusedListId: { $set: nextFocusedListId } }) + } return nextFocusedListId }