diff options
Diffstat (limited to 'spec/frontend/vue_mr_widget/components/states/mr_widget_merging_spec.js')
-rw-r--r-- | spec/frontend/vue_mr_widget/components/states/mr_widget_merging_spec.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/frontend/vue_mr_widget/components/states/mr_widget_merging_spec.js b/spec/frontend/vue_mr_widget/components/states/mr_widget_merging_spec.js index e6b2e9fa176..e16c897a49b 100644 --- a/spec/frontend/vue_mr_widget/components/states/mr_widget_merging_spec.js +++ b/spec/frontend/vue_mr_widget/components/states/mr_widget_merging_spec.js @@ -1,6 +1,11 @@ import { shallowMount } from '@vue/test-utils'; +import simplePoll from '~/lib/utils/simple_poll'; import MrWidgetMerging from '~/vue_merge_request_widget/components/states/mr_widget_merging.vue'; +jest.mock('~/lib/utils/simple_poll', () => + jest.fn().mockImplementation(jest.requireActual('~/lib/utils/simple_poll').default), +); + describe('MRWidgetMerging', () => { let wrapper; @@ -11,6 +16,10 @@ describe('MRWidgetMerging', () => { mr: { targetBranchPath: '/branch-path', targetBranch: 'branch', + transitionStateMachine() {}, + }, + service: { + poll: jest.fn().mockResolvedValue(), }, }, stubs: { @@ -46,4 +55,20 @@ describe('MRWidgetMerging', () => { expect(wrapper.find('a').attributes('href')).toBe('/branch-path'); }); + + describe('initiateMergePolling', () => { + it('should call simplePoll', () => { + wrapper.vm.initiateMergePolling(); + + expect(simplePoll).toHaveBeenCalledWith(expect.any(Function), { timeout: 0 }); + }); + + it('should call handleMergePolling', () => { + jest.spyOn(wrapper.vm, 'handleMergePolling').mockImplementation(() => {}); + + wrapper.vm.initiateMergePolling(); + + expect(wrapper.vm.handleMergePolling).toHaveBeenCalled(); + }); + }); }); |