/ common / features / rates / reducer.spec.ts
reducer.spec.ts
 1  import { CCResponse } from 'api/rates';
 2  import * as actions from './actions';
 3  import * as reducer from './reducer';
 4  
 5  describe('rates reducer', () => {
 6    it('should handle RATES_FETCH_CC_SUCCEEDED', () => {
 7      const fakeCCResp: CCResponse = {
 8        ETH: {
 9          USD: 0,
10          BTC: 1,
11          EUR: 2,
12          GBP: 3,
13          CHF: 4,
14          REP: 5,
15          ETH: 6
16        }
17      };
18  
19      expect(reducer.ratesReducer(undefined, actions.fetchCCRatesSucceeded(fakeCCResp))).toEqual({
20        ...reducer.INITIAL_STATE,
21        rates: {
22          ...reducer.INITIAL_STATE.rates,
23          ...fakeCCResp
24        }
25      });
26    });
27  
28    it('should handle RATES_FETCH_CC_FAILED', () => {
29      expect(reducer.ratesReducer(undefined, actions.fetchCCRatesFailed())).toHaveProperty(
30        'ratesError'
31      );
32    });
33  });