UNPKG

wix-style-react

Version:
43 lines (42 loc) 2.32 kB
"use strict"; var _getAppendToElement = require("./getAppendToElement"); var _utils = require("./utils"); describe('getAppendToElement', () => { it('should append popover host element to body [when] given `window`/`viewport` ', () => { expect((0, _getAppendToElement.getAppendToElement)('viewport').parentElement).toBe(document.body); }); it('should return popover host element [when] given `viewport` ', () => { expect((0, _getAppendToElement.getAppendToElement)('viewport')).toBe(document.querySelector("#".concat(_getAppendToElement.popoverHostElementId))); }); it('should return popover host element [when] given `window` ', () => { expect((0, _getAppendToElement.getAppendToElement)('window')).toBe(document.querySelector("#".concat(_getAppendToElement.popoverHostElementId))); }); it('should return first element with overflow style [when] given `scrollParent` ', () => { var node = document.createElement('div'); var parent = document.createElement('div'); parent.appendChild(node); parent.style.overflow = 'auto'; expect((0, _getAppendToElement.getAppendToElement)('scrollParent', node)).toBe((0, _utils.getScrollParent)(node)); }); it('should return null [when] given `random`', () => { expect((0, _getAppendToElement.getAppendToElement)('random')).toBe(undefined); }); it('should return matching ancestor by predicate [when] filter function', () => { var predicate = el => el.getAttribute('some-attr') === 'some-value'; var element = document.createElement('div'); var parent = document.createElement('div'); parent.setAttribute('some-attr', 'some-value'); parent.appendChild(element); expect((0, _getAppendToElement.getAppendToElement)(predicate, element)).toBe(parent); }); it('should return undefined [when] predicate is not matched', () => { var predicate = el => el.getAttribute('some-attr') === 'some-value'; var element = document.createElement('div'); expect((0, _getAppendToElement.getAppendToElement)(predicate, element)).toBe(undefined); }); it('should return given element [when] element is given', () => { var element = document.createElement('div'); expect((0, _getAppendToElement.getAppendToElement)(element)).toBe(element); }); }); //# sourceMappingURL=getAppendToElement.spec.js.map