From bad8080e6598ea0a03776a278ef5c2da4eff4c88 Mon Sep 17 00:00:00 2001 From: George Mamadashvili Date: Thu, 5 Sep 2024 11:47:30 +0400 Subject: [PATCH 1/2] Core Data: Fix the 'query._fields' property check inside 'getEntityRecord' resolver --- packages/core-data/src/resolvers.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core-data/src/resolvers.js b/packages/core-data/src/resolvers.js index d1aaf0b447cfed..20270ef7f6cff5 100644 --- a/packages/core-data/src/resolvers.js +++ b/packages/core-data/src/resolvers.js @@ -155,7 +155,7 @@ export const getEntityRecord = } ); - if ( query !== undefined ) { + if ( query !== undefined && query._fields ) { query = { ...query, include: [ key ] }; // The resolution cache won't consider query as reusable based on the From 402de6dab9422d48a65f39a82813eece3709976e Mon Sep 17 00:00:00 2001 From: George Mamadashvili Date: Thu, 5 Sep 2024 11:58:49 +0400 Subject: [PATCH 2/2] Update unit test --- packages/core-data/src/test/resolvers.js | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/packages/core-data/src/test/resolvers.js b/packages/core-data/src/test/resolvers.js index 946b795726d2a2..f15bee3b3c2b9b 100644 --- a/packages/core-data/src/test/resolvers.js +++ b/packages/core-data/src/test/resolvers.js @@ -80,7 +80,6 @@ describe( 'getEntityRecord', () => { it( 'accepts a query that overrides default api path', async () => { const query = { context: 'view', _envelope: '1' }; - const queryObj = { include: [ 'post' ], ...query }; const select = { hasEntityRecords: jest.fn( () => {} ), @@ -98,13 +97,6 @@ describe( 'getEntityRecord', () => { query )( { dispatch, select, registry } ); - // Check resolution cache for an existing entity that fulfills the request with query. - expect( select.hasEntityRecords ).toHaveBeenCalledWith( - 'root', - 'postType', - queryObj - ); - // Trigger apiFetch, test that the query is present in the url. expect( triggerFetch ).toHaveBeenCalledWith( { path: '/wp/v2/types/post?context=view&_envelope=1', @@ -116,7 +108,7 @@ describe( 'getEntityRecord', () => { 'root', 'postType', POST_TYPE, - queryObj + query ); // Locks should have been acquired and released.