55 lines
1.1 KiB
JavaScript
55 lines
1.1 KiB
JavaScript
|
import { expect } from 'chai';
|
||
|
import configureMockStore from 'redux-mock-store';
|
||
|
import thunk from 'redux-thunk';
|
||
|
import actions from '../../app/renderer/actions/user';
|
||
|
|
||
|
const mockStore = configureMockStore([thunk]);
|
||
|
|
||
|
describe('actions', () => {
|
||
|
describe('user', () => {
|
||
|
it('should log in', () => {
|
||
|
const store = mockStore({});
|
||
|
const expectedActions = [
|
||
|
{
|
||
|
type: 'USER_LOGIN',
|
||
|
payload: {
|
||
|
username: 'John Doe',
|
||
|
loggedIn: true,
|
||
|
},
|
||
|
},
|
||
|
];
|
||
|
|
||
|
store.dispatch(
|
||
|
actions.login({
|
||
|
username: 'John Doe',
|
||
|
loggedIn: true,
|
||
|
}),
|
||
|
);
|
||
|
|
||
|
expect(store.getActions()).deep.equal(expectedActions);
|
||
|
});
|
||
|
|
||
|
it('should logout', () => {
|
||
|
const store = mockStore({});
|
||
|
const expectedActions = [
|
||
|
{
|
||
|
type: 'USER_LOGOUT',
|
||
|
payload: {
|
||
|
username: '',
|
||
|
loggedIn: false,
|
||
|
},
|
||
|
},
|
||
|
];
|
||
|
|
||
|
store.dispatch(
|
||
|
actions.logout({
|
||
|
username: '',
|
||
|
loggedIn: false,
|
||
|
}),
|
||
|
);
|
||
|
|
||
|
expect(store.getActions()).deep.equal(expectedActions);
|
||
|
});
|
||
|
});
|
||
|
});
|