Parcourir la source

test: add more test

daiwei il y a 1 an
Parent
commit
7938e0ad8d
1 fichiers modifiés avec 23 ajouts et 0 suppressions
  1. 23 0
      packages/compiler-sfc/__tests__/compileTemplate.spec.ts

+ 23 - 0
packages/compiler-sfc/__tests__/compileTemplate.spec.ts

@@ -453,6 +453,29 @@ test('for loop prefixing edge case for reused AST', () => {
   expect(code).not.toMatch(`_ctx.item`)
 })
 
+test('catch block param prefixing edge case for reused AST', () => {
+  const src = `
+  <script setup lang="ts">
+    import { Foo } from './foo'
+  </script>
+  <template>
+    <div @click="() => {
+         try {} catch (err) { console.error(err) }
+      }"/>
+  </template>
+  `
+  const { descriptor } = parse(src)
+  // compileScript triggers importUsageCheck
+  compileScript(descriptor, { id: 'xxx' })
+  const { code } = compileTemplate({
+    id: 'xxx',
+    filename: 'test.vue',
+    ast: descriptor.template!.ast,
+    source: descriptor.template!.content,
+  })
+  expect(code).not.toMatch(`_ctx.err`)
+})
+
 test('prefixing edge case for reused AST ssr mode', () => {
   const src = `
   <script setup lang="ts">