diff options
author | Paul Slaughter <pslaughter@gitlab.com> | 2019-09-10 21:20:21 +0000 |
---|---|---|
committer | Paul Slaughter <pslaughter@gitlab.com> | 2019-09-10 21:20:21 +0000 |
commit | 2c635bfcf50f952771d6714aafe24a578a79b525 (patch) | |
tree | 5544e5d54c748701e5bb13f8c41351dbb49a60e9 | |
parent | 95d16dc007f3fe8831f2baa511bbb7bd708baff0 (diff) | |
parent | 250660ca2d88556c5305bc855744c6e22cb329f2 (diff) | |
download | gitlab-ce-2c635bfcf50f952771d6714aafe24a578a79b525.tar.gz |
Merge branch 'edit-delete-vuln-dismissal-toast-notication-vue-global' into 'master'
Backport global toast notification changes
See merge request gitlab-org/gitlab-ce!32810
-rw-r--r-- | app/assets/javascripts/vue_shared/plugins/global_toast.js | 8 | ||||
-rw-r--r-- | spec/frontend/vue_shared/plugins/global_toast_spec.js | 24 |
2 files changed, 32 insertions, 0 deletions
diff --git a/app/assets/javascripts/vue_shared/plugins/global_toast.js b/app/assets/javascripts/vue_shared/plugins/global_toast.js new file mode 100644 index 00000000000..c0de1cdc615 --- /dev/null +++ b/app/assets/javascripts/vue_shared/plugins/global_toast.js @@ -0,0 +1,8 @@ +import Vue from 'vue'; +import { GlToast } from '@gitlab/ui'; + +Vue.use(GlToast); + +export default function showGlobalToast(...args) { + return Vue.toasted.show(...args); +} diff --git a/spec/frontend/vue_shared/plugins/global_toast_spec.js b/spec/frontend/vue_shared/plugins/global_toast_spec.js new file mode 100644 index 00000000000..551abe3cb41 --- /dev/null +++ b/spec/frontend/vue_shared/plugins/global_toast_spec.js @@ -0,0 +1,24 @@ +import toast from '~/vue_shared/plugins/global_toast'; +import Vue from 'vue'; + +describe('Global toast', () => { + let spyFunc; + + beforeEach(() => { + spyFunc = jest.spyOn(Vue.toasted, 'show').mockImplementation(() => {}); + }); + + afterEach(() => { + spyFunc.mockRestore(); + }); + + it('should pass all args to Vue toasted', () => { + const arg1 = 'TestMessage'; + const arg2 = { className: 'foo' }; + + toast(arg1, arg2); + + expect(Vue.toasted.show).toHaveBeenCalledTimes(1); + expect(Vue.toasted.show).toHaveBeenCalledWith(arg1, arg2); + }); +}); |