From fc620b9e80d67ca99f962431461b8fc4d085d9df Mon Sep 17 00:00:00 2001 From: Jason Rudolph Date: Tue, 24 Oct 2017 09:06:50 -0400 Subject: [PATCH] :art: Move helper functions outside of `describe` block --- spec/tooltip-manager-spec.js | 44 ++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/spec/tooltip-manager-spec.js b/spec/tooltip-manager-spec.js index 2f95299f3..65587839f 100644 --- a/spec/tooltip-manager-spec.js +++ b/spec/tooltip-manager-spec.js @@ -9,28 +9,6 @@ describe('TooltipManager', () => { const ctrlX = _.humanizeKeystroke('ctrl-x') const ctrlY = _.humanizeKeystroke('ctrl-y') - beforeEach(function () { - manager = new TooltipManager({keymapManager: atom.keymaps, viewRegistry: atom.views}) - element = createElement('foo') - }) - - var createElement = function (className) { - const el = document.createElement('div') - el.classList.add(className) - jasmine.attachToDOM(el) - return el - } - - const mouseEnter = function (element) { - element.dispatchEvent(new CustomEvent('mouseenter', {bubbles: false})) - element.dispatchEvent(new CustomEvent('mouseover', {bubbles: true})) - } - - const mouseLeave = function (element) { - element.dispatchEvent(new CustomEvent('mouseleave', {bubbles: false})) - element.dispatchEvent(new CustomEvent('mouseout', {bubbles: true})) - } - const hover = function (element, fn) { mouseEnter(element) advanceClock(manager.hoverDefaults.delay.show) @@ -39,6 +17,11 @@ describe('TooltipManager', () => { advanceClock(manager.hoverDefaults.delay.hide) } + beforeEach(function () { + manager = new TooltipManager({keymapManager: atom.keymaps, viewRegistry: atom.views}) + element = createElement('foo') + }) + describe('::add(target, options)', () => { describe("when the trigger is 'hover' (the default)", () => { it('creates a tooltip when hovering over the target element', () => { @@ -251,3 +234,20 @@ describe('TooltipManager', () => { }) }) }) + +function createElement (className) { + const el = document.createElement('div') + el.classList.add(className) + jasmine.attachToDOM(el) + return el +} + +function mouseEnter (element) { + element.dispatchEvent(new CustomEvent('mouseenter', {bubbles: false})) + element.dispatchEvent(new CustomEvent('mouseover', {bubbles: true})) +} + +function mouseLeave (element) { + element.dispatchEvent(new CustomEvent('mouseleave', {bubbles: false})) + element.dispatchEvent(new CustomEvent('mouseout', {bubbles: true})) +}