From 9c4de7b9edaa6a3dcb6b3f4dff820e655e11cca9 Mon Sep 17 00:00:00 2001 From: Evan You Date: Tue, 10 Mar 2020 15:23:14 -0400 Subject: [PATCH] test(srr): group portal tests --- .../__tests__/renderToString.spec.ts | 22 +------------------ ...RenderPortal.spec.ts => ssrPortal.spec.ts} | 19 ++++++++++++++-- 2 files changed, 18 insertions(+), 23 deletions(-) rename packages/server-renderer/__tests__/{ssrRenderPortal.spec.ts => ssrPortal.spec.ts} (61%) diff --git a/packages/server-renderer/__tests__/renderToString.spec.ts b/packages/server-renderer/__tests__/renderToString.spec.ts index 730f7a145..ee5cfa013 100644 --- a/packages/server-renderer/__tests__/renderToString.spec.ts +++ b/packages/server-renderer/__tests__/renderToString.spec.ts @@ -5,16 +5,11 @@ import { withScopeId, resolveComponent, ComponentOptions, - Portal, ref, defineComponent } from 'vue' import { escapeHtml, mockWarn } from '@vue/shared' -import { - renderToString, - renderComponent, - SSRContext -} from '../src/renderToString' +import { renderToString, renderComponent } from '../src/renderToString' import { ssrRenderSlot } from '../src/helpers/ssrRenderSlot' mockWarn() @@ -511,21 +506,6 @@ describe('ssr: renderToString', () => { }) }) - test('portal', async () => { - const ctx: SSRContext = {} - await renderToString( - h( - Portal, - { - target: `#target` - }, - h('span', 'hello') - ), - ctx - ) - expect(ctx.portals!['#target']).toBe('hello') - }) - describe('scopeId', () => { // note: here we are only testing scopeId handling for vdom serialization. // compiled srr render functions will include scopeId directly in strings. diff --git a/packages/server-renderer/__tests__/ssrRenderPortal.spec.ts b/packages/server-renderer/__tests__/ssrPortal.spec.ts similarity index 61% rename from packages/server-renderer/__tests__/ssrRenderPortal.spec.ts rename to packages/server-renderer/__tests__/ssrPortal.spec.ts index 70031dd4e..c26d60cc9 100644 --- a/packages/server-renderer/__tests__/ssrRenderPortal.spec.ts +++ b/packages/server-renderer/__tests__/ssrPortal.spec.ts @@ -1,9 +1,9 @@ -import { createApp } from 'vue' +import { createApp, h, Portal } from 'vue' import { renderToString, SSRContext } from '../src/renderToString' import { ssrRenderPortal } from '../src/helpers/ssrRenderPortal' describe('ssrRenderPortal', () => { - test('portal rendering', async () => { + test('portal rendering (compiled)', async () => { const ctx = { portals: {} } as SSRContext @@ -26,4 +26,19 @@ describe('ssrRenderPortal', () => { ) expect(ctx.portals!['#target']).toBe(`
content
`) }) + + test('portal rendering (vnode)', async () => { + const ctx: SSRContext = {} + await renderToString( + h( + Portal, + { + target: `#target` + }, + h('span', 'hello') + ), + ctx + ) + expect(ctx.portals!['#target']).toBe('hello') + }) })