Skip to content

Commit 4ee0dad

Browse files
committed
wip(vitest-migration): runtime-dom tests passing + use environmentMatchGlobs
1 parent a6be280 commit 4ee0dad

14 files changed

+11
-43
lines changed

packages/runtime-dom/__tests__/customElement.spec.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -367,18 +367,17 @@ describe('defineCustomElement', () => {
367367
})
368368

369369
test('emit from within async component wrapper', async () => {
370-
const E = defineCustomElement(
371-
defineAsyncComponent(
372-
() => new Promise<typeof CompDef>(res => res(CompDef as any))
373-
)
374-
)
370+
const p = new Promise<typeof CompDef>(res => res(CompDef as any))
371+
const E = defineCustomElement(defineAsyncComponent(() => p))
375372
customElements.define('my-async-el-emits', E)
376373
container.innerHTML = `<my-async-el-emits></my-async-el-emits>`
377374
const e = container.childNodes[0] as VueElement
378375
const spy = vi.fn()
379376
e.addEventListener('my-click', spy)
380377
// this feels brittle but seems necessary to reach the node in the DOM.
381378
await customElements.whenDefined('my-async-el-emits')
379+
await nextTick()
380+
await nextTick()
382381
e.shadowRoot!.childNodes[0].dispatchEvent(new CustomEvent('click'))
383382
expect(spy).toHaveBeenCalled()
384383
expect(spy.mock.calls[0][0]).toMatchObject({
@@ -398,6 +397,8 @@ describe('defineCustomElement', () => {
398397
const spy = vi.fn()
399398
e.addEventListener('my-click', spy)
400399
await customElements.whenDefined('my-async-el-props-emits')
400+
await nextTick()
401+
await nextTick()
401402
e.shadowRoot!.childNodes[0].dispatchEvent(new CustomEvent('click'))
402403
expect(spy).toHaveBeenCalled()
403404
expect(spy.mock.calls[0][0]).toMatchObject({

packages/runtime-dom/__tests__/patchEvents.spec.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,15 +85,14 @@ describe(`runtime-dom: events patching`, () => {
8585
const el = document.createElement('div')
8686

8787
// string should be set as attribute
88-
const fn = ((window as any).__globalSpy = vi.fn())
89-
patchProp(el, 'onclick', null, '__globalSpy(1)')
88+
const fn = ((el as any).spy = vi.fn())
89+
patchProp(el, 'onclick', null, 'this.spy(1)')
9090
el.dispatchEvent(new Event('click'))
9191
await timeout()
92-
delete (window as any).__globalSpy
9392
expect(fn).toHaveBeenCalledWith(1)
9493

9594
const fn2 = vi.fn()
96-
patchProp(el, 'onclick', '__globalSpy(1)', fn2)
95+
patchProp(el, 'onclick', 'this.spy(1)', fn2)
9796
const event = new Event('click')
9897
el.dispatchEvent(event)
9998
await timeout()

packages/vue-compat/__tests__/compiler.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import { vi } from 'vitest'
52
import Vue from '@vue/compat'
63
import { nextTick } from '@vue/runtime-core'

packages/vue-compat/__tests__/componentAsync.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import Vue from '@vue/compat'
52
import {
63
DeprecationTypes,

packages/vue-compat/__tests__/componentFunctional.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import Vue from '@vue/compat'
52
import {
63
DeprecationTypes,

packages/vue-compat/__tests__/componentVModel.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import Vue from '@vue/compat'
52
import { ComponentOptions } from '../../runtime-core/src/component'
63
import { nextTick } from '../../runtime-core/src/scheduler'

packages/vue-compat/__tests__/filters.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import Vue from '@vue/compat'
52
import { CompilerDeprecationTypes } from '../../compiler-core/src'
63
import {

packages/vue-compat/__tests__/global.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import { vi } from 'vitest'
52
import Vue from '@vue/compat'
63
import { effect, isReactive } from '@vue/reactivity'

packages/vue-compat/__tests__/globalConfig.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import { vi } from 'vitest'
52
import Vue from '@vue/compat'
63
import {

packages/vue-compat/__tests__/instance.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import { vi, Mock } from 'vitest'
52
import Vue from '@vue/compat'
63
import { Slots } from '../../runtime-core/src/componentSlots'

packages/vue-compat/__tests__/misc.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import { vi } from 'vitest'
52
import Vue from '@vue/compat'
63
import { nextTick } from '../../runtime-core/src/scheduler'

packages/vue-compat/__tests__/options.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import { vi } from 'vitest'
52
import Vue from '@vue/compat'
63
import { nextTick } from '../../runtime-core/src/scheduler'

packages/vue-compat/__tests__/renderFn.spec.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/**
2-
* @vitest-environment jsdom
3-
*/
41
import { ShapeFlags } from '@vue/shared'
52
import Vue from '@vue/compat'
63
import { createComponentInstance } from '../../runtime-core/src/component'

vitest.config.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ export default defineConfig({
4242
},
4343
test: {
4444
globals: true,
45-
setupFiles: 'scripts/setupVitest.ts'
45+
setupFiles: 'scripts/setupVitest.ts',
46+
environmentMatchGlobs: [['packages/{vue-compat,runtime-dom}/**', 'jsdom']]
4647
}
4748
})

0 commit comments

Comments
 (0)