Commit 1f2870c3 authored by Simon Knox's avatar Simon Knox Committed by Phil Hughes

Resolve "Transient failure of related_issues_root_spec.js"

parent 3ab12f71
......@@ -140,14 +140,12 @@ describe('RelatedIssuesRoot', () => {
vm.onPendingFormSubmit();
setTimeout(() => {
Vue.nextTick(() => {
expect(vm.state.pendingReferences.length).toEqual(0);
expect(vm.state.relatedIssues.length).toEqual(0);
done();
});
});
});
it('submit pending issue as related issue', (done) => {
const interceptor = (request, next) => {
......@@ -167,7 +165,6 @@ describe('RelatedIssuesRoot', () => {
vm.onPendingFormSubmit();
setTimeout(() => {
Vue.nextTick(() => {
expect(vm.state.pendingReferences.length).toEqual(0);
expect(vm.state.relatedIssues.length).toEqual(1);
expect(vm.state.relatedIssues[0].id).toEqual(issuable1.id);
......@@ -177,7 +174,6 @@ describe('RelatedIssuesRoot', () => {
done();
});
});
});
it('submit multiple pending issues as related issues', (done) => {
const interceptor = (request, next) => {
......@@ -197,7 +193,6 @@ describe('RelatedIssuesRoot', () => {
vm.onPendingFormSubmit();
setTimeout(() => {
Vue.nextTick(() => {
expect(vm.state.pendingReferences.length).toEqual(0);
expect(vm.state.relatedIssues.length).toEqual(2);
expect(vm.state.relatedIssues[0].id).toEqual(issuable1.id);
......@@ -209,7 +204,6 @@ describe('RelatedIssuesRoot', () => {
});
});
});
});
describe('onPendingFormCancel', () => {
beforeEach(() => {
......@@ -230,55 +224,40 @@ describe('RelatedIssuesRoot', () => {
});
describe('fetchRelatedIssues', () => {
beforeEach((done) => {
vm = new RelatedIssuesRoot({
propsData: defaultProps,
}).$mount();
// wait for internal call to fetchRelatedIssues to resolve
setTimeout(() => Vue.nextTick(done));
});
describe('when the network has not responded yet', () => {
it('should be fetching', (done) => {
vm.fetchRelatedIssues();
expect(vm.isFetching).toEqual(true);
setTimeout(() => Vue.nextTick(done));
});
});
describe('when the network responds', () => {
const interceptor = (request, next) => {
next(request.respondWith(JSON.stringify([issuable1, issuable2]), {
status: 200,
}));
};
beforeEach(() => {
beforeEach((done) => {
Vue.http.interceptors.push(interceptor);
vm = new RelatedIssuesRoot({
propsData: defaultProps,
}).$mount();
// wait for internal call to fetchRelatedIssues to resolve
setTimeout(done);
});
afterEach(() => {
Vue.http.interceptors = _.without(Vue.http.interceptors, interceptor);
});
it('should be done fetching', (done) => {
it('sets isFetching while fetching', (done) => {
vm.fetchRelatedIssues();
expect(vm.isFetching).toEqual(true);
setTimeout(() => {
Vue.nextTick(() => {
expect(vm.isFetching).toEqual(false);
done();
});
});
});
it('should fetch related issues', (done) => {
vm.fetchRelatedIssues();
setTimeout(() => {
Vue.nextTick(() => {
expect(vm.state.relatedIssues.length).toEqual(2);
expect(vm.state.relatedIssues[0].id).toEqual(issuable1.id);
......@@ -288,8 +267,6 @@ describe('RelatedIssuesRoot', () => {
});
});
});
});
});
describe('onInput', () => {
beforeEach(() => {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment