diff options
Diffstat (limited to 'spec/javascripts/user_callout_spec.js')
-rw-r--r-- | spec/javascripts/user_callout_spec.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/spec/javascripts/user_callout_spec.js b/spec/javascripts/user_callout_spec.js new file mode 100644 index 00000000000..c0375ebc61c --- /dev/null +++ b/spec/javascripts/user_callout_spec.js @@ -0,0 +1,37 @@ +import Cookies from 'js-cookie'; +import UserCallout from '~/user_callout'; + +const USER_CALLOUT_COOKIE = 'user_callout_dismissed'; + +describe('UserCallout', function () { + const fixtureName = 'dashboard/user-callout.html.raw'; + preloadFixtures(fixtureName); + + beforeEach(() => { + loadFixtures(fixtureName); + Cookies.remove(USER_CALLOUT_COOKIE); + + this.userCallout = new UserCallout(); + this.closeButton = $('.js-close-callout.close'); + this.userCalloutBtn = $('.js-close-callout:not(.close)'); + this.userCalloutContainer = $('.user-callout'); + }); + + it('hides when user clicks on the dismiss-icon', (done) => { + this.closeButton.click(); + expect(Cookies.get(USER_CALLOUT_COOKIE)).toBe('true'); + + setTimeout(() => { + expect( + document.querySelector('.user-callout'), + ).toBeNull(); + + done(); + }); + }); + + it('hides when user clicks on the "check it out" button', () => { + this.userCalloutBtn.click(); + expect(Cookies.get(USER_CALLOUT_COOKIE)).toBe('true'); + }); +}); |