From 6be6c268e86a135dc66adde5a981d6d13be72091 Mon Sep 17 00:00:00 2001 From: Evan You Date: Sun, 22 Aug 2021 12:33:00 -0400 Subject: [PATCH] test(compiler-core): include test case for expression prefixing in assignments --- .../transforms/transformExpressions.spec.ts | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/packages/compiler-core/__tests__/transforms/transformExpressions.spec.ts b/packages/compiler-core/__tests__/transforms/transformExpressions.spec.ts index 2466fffe8..4db7aa619 100644 --- a/packages/compiler-core/__tests__/transforms/transformExpressions.spec.ts +++ b/packages/compiler-core/__tests__/transforms/transformExpressions.spec.ts @@ -402,6 +402,33 @@ describe('compiler: expression transform', () => { ) }) + test('should prefix in assignment', () => { + const node = parseWithExpressionTransform( + `{{ x = 1 }}` + ) as InterpolationNode + expect(node.content).toMatchObject({ + type: NodeTypes.COMPOUND_EXPRESSION, + children: [{ content: `_ctx.x` }, ` = 1`] + }) + }) + + test('should prefix in assignment pattern', () => { + const node = parseWithExpressionTransform( + `{{ { x, y: [z] } = obj }}` + ) as InterpolationNode + expect(node.content).toMatchObject({ + type: NodeTypes.COMPOUND_EXPRESSION, + children: [ + `{ x: `, + { content: `_ctx.x` }, + `, y: [`, + { content: `_ctx.z` }, + `] } = `, + { content: `_ctx.obj` } + ] + }) + }) + describe('ES Proposals support', () => { test('bigInt', () => { const node = parseWithExpressionTransform(