diff options
author | Mike Greiling <mike@pixelcog.com> | 2018-03-30 12:58:34 -0500 |
---|---|---|
committer | Mike Greiling <mike@pixelcog.com> | 2018-04-23 00:54:19 -0500 |
commit | 8a713b37cb45850bb7080f9c09b08bb53d4ec237 (patch) | |
tree | ff619db32ede2f68e58788d58b796c38b81d058f /spec/javascripts/test_bundle.js | |
parent | 8166a11c027d334d745a1f02a6c4b624114b4356 (diff) | |
download | gitlab-ce-8a713b37cb45850bb7080f9c09b08bb53d4ec237.tar.gz |
add spyOnDependency method
Diffstat (limited to 'spec/javascripts/test_bundle.js')
-rw-r--r-- | spec/javascripts/test_bundle.js | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/spec/javascripts/test_bundle.js b/spec/javascripts/test_bundle.js index 14bff05e537..bcd15f5eae2 100644 --- a/spec/javascripts/test_bundle.js +++ b/spec/javascripts/test_bundle.js @@ -1,4 +1,5 @@ -/* eslint-disable jasmine/no-global-setup */ +/* eslint-disable jasmine/no-global-setup, jasmine/no-unsafe-spy, no-underscore-dangle */ + import $ from 'jquery'; import 'vendor/jasmine-jquery'; import '~/commons'; @@ -55,6 +56,17 @@ window.addEventListener('unhandledrejection', event => { console.error(event.reason.stack || event.reason); }); +// Add global function to spy on a module's dependencies via rewire +window.spyOnDependency = (module, name) => { + const dependency = module.__GetDependency__(name); + const spy = jasmine.createSpy(name, dependency); + module.__Rewire__(name, spy); + return spy; +}; + +// Reset any rewired modules after each test (see babel-plugin-rewire) +afterEach(__rewire_reset_all__); // eslint-disable-line + // HACK: Chrome 59 disconnects if there are too many synchronous tests in a row // because it appears to lock up the thread that communicates to Karma's socket // This async beforeEach gets called on every spec and releases the JS thread long |