54 lines
1.1 KiB
JavaScript
54 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);
|
|
});
|
|
});
|
|
});
|