Home / File/ ssr-bundle-render.spec.ts — vue Source File

ssr-bundle-render.spec.ts — vue Source File

Architecture documentation for ssr-bundle-render.spec.ts, a typescript file in the vue codebase. 2 imports, 0 dependents.

File typescript VueCore VDom 2 imports 1 functions

Entity Profile

Dependency Diagram

graph LR
  7a6ba2c3_97db_247f_bdf0_773e52e2fab9["ssr-bundle-render.spec.ts"]
  376852b3_f7bb_d51e_6be4_247c9f18e863["compile-with-webpack.ts"]
  7a6ba2c3_97db_247f_bdf0_773e52e2fab9 --> 376852b3_f7bb_d51e_6be4_247c9f18e863
  840bac07_32f7_334d_1162_27955fe7db96["createWebpackBundleRenderer"]
  7a6ba2c3_97db_247f_bdf0_773e52e2fab9 --> 840bac07_32f7_334d_1162_27955fe7db96
  style 7a6ba2c3_97db_247f_bdf0_773e52e2fab9 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

// @vitest-environment node

import { createWebpackBundleRenderer } from './compile-with-webpack'

describe('SSR: bundle renderer', () => {
  createAssertions(true)
  // createAssertions(false)
})

function createAssertions(runInNewContext) {
  it('renderToString', async () => {
    const renderer = await createWebpackBundleRenderer('app.js', {
      runInNewContext
    })
    const context: any = { url: '/test' }
    const res = await renderer.renderToString(context)
    expect(res).toBe('<div data-server-rendered="true">/test</div>')
    expect(context.msg).toBe('hello')
  })

  it('renderToStream', async () => {
    const renderer = await createWebpackBundleRenderer('app.js', {
      runInNewContext
    })
    const context: any = { url: '/test' }

    const res = await new Promise((resolve, reject) => {
      const stream = renderer.renderToStream(context)
      let res = ''
      stream.on('data', chunk => {
        res += chunk.toString()
      })
      stream.on('error', reject)
      stream.on('end', () => {
        resolve(res)
      })
    })

    expect(res).toBe('<div data-server-rendered="true">/test</div>')
    expect(context.msg).toBe('hello')
  })

  it('renderToString catch error', async () => {
    const renderer = await createWebpackBundleRenderer('error.js', {
      runInNewContext
    })
    try {
      await renderer.renderToString()
    } catch (err: any) {
      expect(err.message).toBe('foo')
    }
  })

  it('renderToString catch Promise rejection', async () => {
    const renderer = await createWebpackBundleRenderer('promise-rejection.js', {
      runInNewContext
    })
    try {
      await renderer.renderToString()
    } catch (err: any) {
// ... (266 more lines)

Domain

Subdomains

Functions

Frequently Asked Questions

What does ssr-bundle-render.spec.ts do?
ssr-bundle-render.spec.ts is a source file in the vue codebase, written in typescript. It belongs to the VueCore domain, VDom subdomain.
What functions are defined in ssr-bundle-render.spec.ts?
ssr-bundle-render.spec.ts defines 1 function(s): createAssertions.
What does ssr-bundle-render.spec.ts depend on?
ssr-bundle-render.spec.ts imports 2 module(s): compile-with-webpack.ts, createWebpackBundleRenderer.
Where is ssr-bundle-render.spec.ts in the architecture?
ssr-bundle-render.spec.ts is located at packages/server-renderer/test/ssr-bundle-render.spec.ts (domain: VueCore, subdomain: VDom, directory: packages/server-renderer/test).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free