71 lines
1.6 KiB
JavaScript
71 lines
1.6 KiB
JavaScript
import {
|
|
refreshLastCommitData,
|
|
} from '~/ide/stores/actions';
|
|
import store from '~/ide/stores';
|
|
import service from '~/ide/services';
|
|
import { resetStore } from '../../helpers';
|
|
import testAction from '../../../helpers/vuex_action_helper';
|
|
|
|
describe('IDE store project actions', () => {
|
|
beforeEach(() => {
|
|
store.state.projects.abcproject = {};
|
|
});
|
|
|
|
afterEach(() => {
|
|
resetStore(store);
|
|
});
|
|
|
|
describe('refreshLastCommitData', () => {
|
|
beforeEach(() => {
|
|
store.state.currentProjectId = 'abcproject';
|
|
store.state.currentBranchId = 'master';
|
|
store.state.projects.abcproject = {
|
|
branches: {
|
|
master: {
|
|
commit: null,
|
|
},
|
|
},
|
|
};
|
|
});
|
|
|
|
it('calls the service', done => {
|
|
spyOn(service, 'getBranchData').and.returnValue(
|
|
Promise.resolve({
|
|
data: {
|
|
commit: { id: '123' },
|
|
},
|
|
}),
|
|
);
|
|
|
|
store
|
|
.dispatch('refreshLastCommitData', {
|
|
projectId: store.state.currentProjectId,
|
|
branchId: store.state.currentBranchId,
|
|
})
|
|
.then(() => {
|
|
expect(service.getBranchData).toHaveBeenCalledWith('abcproject', 'master');
|
|
|
|
done();
|
|
})
|
|
.catch(done.fail);
|
|
});
|
|
|
|
it('commits getBranchData', done => {
|
|
testAction(
|
|
refreshLastCommitData,
|
|
{},
|
|
{},
|
|
[{
|
|
type: 'SET_BRANCH_COMMIT',
|
|
payload: {
|
|
projectId: 'abcproject',
|
|
branchId: 'master',
|
|
commit: { id: '123' },
|
|
},
|
|
}], // mutations
|
|
[], // action
|
|
done,
|
|
);
|
|
});
|
|
});
|
|
});
|