diff --git a/core-data/index.js b/core-data/index.js index 0e651c8cb6b71..cdcc7b5bae068 100644 --- a/core-data/index.js +++ b/core-data/index.js @@ -16,17 +16,17 @@ const MODULE_KEY = 'core'; const store = registerStore( MODULE_KEY, { reducer, - selectors: { getCategories }, + selectors: { + getCategories, + }, resolvers: { - getCategories: { - fulfill() { - wp.apiRequest( { path: '/wp/v2/categories' } ).then( categories => { - store.dispatch( { - type: 'RECEIVE_CATEGORIES', - categories, - } ); + getCategories() { + wp.apiRequest( { path: '/wp/v2/categories' } ).then( ( categories ) => { + store.dispatch( { + type: 'RECEIVE_CATEGORIES', + categories, } ); - }, + } ); }, }, } ); diff --git a/data/index.js b/data/index.js index b653654ff2f35..04c6c9855874f 100644 --- a/data/index.js +++ b/data/index.js @@ -3,7 +3,7 @@ */ import isEqualShallow from 'is-equal-shallow'; import { createStore } from 'redux'; -import { flowRight, without, mapValues, get } from 'lodash'; +import { flowRight, without, mapValues } from 'lodash'; import memize from 'memize'; /** @@ -119,13 +119,12 @@ export function registerSelectors( reducerKey, newSelectors ) { export function registerResolvers( reducerKey, newResolvers ) { const createResolver = ( selector, key ) => { // Don't modify selector behavior if no resolver exists. - let fulfill = get( newResolvers, [ key, 'fulfill' ] ); - if ( typeof fulfill !== 'function' ) { + if ( ! newResolvers.hasOwnProperty( key ) ) { return selector; } // Ensure single invocation per argument set via memoization. - fulfill = memize( fulfill ); + const fulfill = memize( newResolvers[ key ] ); return ( ...args ) => { fulfill( ...args ); diff --git a/data/test/index.js b/data/test/index.js index 31721d3d65c9e..933ed5fdd630f 100644 --- a/data/test/index.js +++ b/data/test/index.js @@ -88,18 +88,6 @@ describe( 'registerResolvers', () => { expect( select( 'demo' ).getValue() ).toBe( 'OK' ); } ); - it( 'should not do anything if registered without fulfill', () => { - registerReducer( 'demo', ( state = 'OK' ) => state ); - registerSelectors( 'demo', { - getValue: ( state ) => state, - } ); - registerResolvers( 'demo', { - getValue: {}, - } ); - - expect( select( 'demo' ).getValue() ).toBe( 'OK' ); - } ); - it( 'should behave as a side effect for the given selector, with arguments', () => { const resolver = jest.fn(); @@ -108,9 +96,7 @@ describe( 'registerResolvers', () => { getValue: ( state ) => state, } ); registerResolvers( 'demo', { - getValue: { - fulfill: resolver, - }, + getValue: resolver, } ); const value = select( 'demo' ).getValue( 'arg1', 'arg2' );