UNPKG

vuetify

Version:

Vue Material Component Framework

43 lines (33 loc) 1.19 kB
import Vue from 'vue' import { mount, } from '@vue/test-utils' import { attachedRoot, } from '../dom' const FooComponent = Vue.extend({ render (h) { return h('div', ['foo']) }, }) describe('dom', () => { it('should properly detect an element\'s root', () => { const shadowHost = document.createElement('div') expect(attachedRoot(shadowHost)).toBeNull() const shadowRoot = shadowHost.attachShadow({ mode: 'closed' }) expect(attachedRoot(shadowRoot)).toBeNull() document.body.appendChild(shadowHost) expect(attachedRoot(shadowHost)).toBe(document) expect(attachedRoot(shadowRoot)).toBe(shadowRoot) const insideDiv = document.createElement('div') expect(attachedRoot(insideDiv)).toBeNull() shadowRoot.appendChild(insideDiv) expect(attachedRoot(insideDiv)).toBe(shadowRoot) }) it('should detect the root of mounted components', () => { const attachedWrapper = mount(FooComponent, { attachToDocument: true }) expect(attachedRoot(attachedWrapper.element)).toBe(document) const detachedWrapper = mount(FooComponent, { attachToDocument: false }) expect(attachedRoot(detachedWrapper.element)).toBeNull() }) })