)
})
- test.todo('with ssr slot vnode fallback', () => {})
+ test('in ssr slot vnode fallback', async () => {
+ const { container, data } = await testHydration(
+ `<template>
+ <components.Child>
+ <span>{{ data }}</span>
+ </components.Child>
+ </template>`,
+ {
+ Child: `
+ <template>
+ <component :is="'div'">
+ <slot />
+ </component>
+ </template>`,
+ },
+ ref('foo'),
+ )
+
+ expect(formatHtml(container.innerHTML)).toMatchInlineSnapshot(
+ `
+ "<div>
+ <!--[--><span>foo</span><!--]-->
+ <!--slot--></div><!--dynamic-component-->"
+ `,
+ )
+
+ data.value = 'bar'
+ await nextTick()
+ expect(formatHtml(container.innerHTML)).toMatchInlineSnapshot(
+ `
+ "<div>
+ <!--[--><span>bar</span><!--]-->
+ <!--slot--></div><!--dynamic-component-->"
+ `,
+ )
+ })
})
describe('if', () => {