فهرست منبع

test(ssr): test renderAttr

Evan You 6 سال پیش
والد
کامیت
e2c5060fb4
1فایلهای تغییر یافته به همراه21 افزوده شده و 2 حذف شده
  1. 21 2
      packages/server-renderer/__tests__/renderAttrs.spec.ts

+ 21 - 2
packages/server-renderer/__tests__/renderAttrs.spec.ts

@@ -1,10 +1,12 @@
 import {
   renderAttrs,
   renderClass,
-  renderStyle
+  renderStyle,
+  renderAttr
 } from '../src/helpers/renderAttrs'
+import { escapeHtml } from '@vue/shared'
 
-describe('ssr: renderProps', () => {
+describe('ssr: renderAttrs', () => {
   test('ignore reserved props', () => {
     expect(
       renderAttrs({
@@ -72,6 +74,23 @@ describe('ssr: renderProps', () => {
   })
 })
 
+describe('ssr: renderAttr', () => {
+  test('basic', () => {
+    expect(renderAttr('foo', 'bar')).toBe(` foo="bar"`)
+  })
+
+  test('null and undefined', () => {
+    expect(renderAttr('foo', null)).toBe(``)
+    expect(renderAttr('foo', undefined)).toBe(``)
+  })
+
+  test('escape', () => {
+    expect(renderAttr('foo', '<script>')).toBe(
+      ` foo="${escapeHtml(`<script>`)}"`
+    )
+  })
+})
+
 describe('ssr: renderClass', () => {
   test('via renderProps', () => {
     expect(