static-cms/test/reducers/config.spec.js
Mathias Biilmann Christensen c60d8ba706 Initial commit
2016-02-25 00:45:56 -08:00

39 lines
1004 B
JavaScript

import expect from 'expect';
import Immutable from 'immutable';
import { configLoaded, configLoading, configFailed } from '../../src/actions/config';
import { config } from '../../src/reducers/config';
describe('config', () => {
it('should handle an empty state', () => {
expect(
config(undefined, {})
).toEqual(
null
);
});
it('should handle an update', () => {
expect(
config(Immutable.Map({'a': 'b', 'c': 'd'}), configLoaded({'a': 'changed', 'e': 'new'}))
).toEqual(
Immutable.Map({'a': 'changed', 'e': 'new'})
);
});
it('should mark the config as loading', () => {
expect(
config(undefined, configLoading())
).toEqual(
Immutable.Map({isFetching: true})
);
});
it('should handle an error', () => {
expect(
config(Immutable.Map({isFetching: true}), configFailed(new Error('Config could not be loaded')))
).toEqual(
Immutable.Map({error: 'Error: Config could not be loaded'})
);
});
});