Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
optometrists
/
cache
/
cache
/
cache
/
cache
/
cache
/
.wp-cli
/
wp-content
/
plugins
/
woocommerce
/
packages
/
woocommerce-blocks
/
assets
/
js
/
data
/
cart
/
test
:
resolvers.js
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
/** * Internal dependencies */ import { getCartData } from '../resolvers'; import { receiveCart, receiveError } from '../actions'; import { CART_API_ERROR } from '../constants'; jest.mock( '@wordpress/data-controls' ); describe( 'getCartData', () => { describe( 'yields with expected responses', () => { let fulfillment; const rewind = () => ( fulfillment = getCartData() ); test( 'when apiFetch returns a valid response, yields expected ' + 'action', () => { rewind(); fulfillment.next( 'https://example.org' ); const { value } = fulfillment.next( { coupons: [], items: [], fees: [], itemsCount: 0, itemsWeight: 0, needsShipping: true, totals: {}, } ); expect( value ).toEqual( receiveCart( { coupons: [], items: [], fees: [], itemsCount: 0, itemsWeight: 0, needsShipping: true, totals: {}, } ) ); const { done } = fulfillment.next(); expect( done ).toBe( true ); } ); } ); describe( 'yields with expected response when there is an error', () => { let fulfillment; const rewind = () => ( fulfillment = getCartData() ); test( 'when apiFetch returns a valid response, yields expected ' + 'action', () => { rewind(); fulfillment.next( 'https://example.org' ); const { value } = fulfillment.next( undefined ); expect( value ).toEqual( receiveError( CART_API_ERROR ) ); const { done } = fulfillment.next(); expect( done ).toBe( true ); } ); } ); } );