From 3b365dd8ba13d15e7041e65f1f9f713ae4867b2e Mon Sep 17 00:00:00 2001 From: Frederik Wessberg Date: Sat, 30 Jul 2022 00:31:54 +0200 Subject: [PATCH] chore: add null-check --- .../evaluate-property-access-expression.ts | 2 +- test/assignments/assignments.test.ts | 27 +++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/src/interpreter/evaluator/evaluate-property-access-expression.ts b/src/interpreter/evaluator/evaluate-property-access-expression.ts index b90a0b1..29ce122 100644 --- a/src/interpreter/evaluator/evaluate-property-access-expression.ts +++ b/src/interpreter/evaluator/evaluate-property-access-expression.ts @@ -11,7 +11,7 @@ export function evaluatePropertyAccessExpression(options: EvaluatorOptions { + const {result} = executeProgram( + ` + const mapOfMaps: Map> = new Map(); + + function getMapForKey(key: string): string { + + let innerMap = mapOfMaps.get(key); + if (innerMap == null) { + innerMap = new Map(); + mapOfMaps.set(key, innerMap); + } + + return innerMap; + } + + mapOfMaps.set("foo", new Map()); + getMapForKey("foo"); + `, + "getMapForKey(", + {typescript, useTypeChecker} + ); + + if (!result.success) t.fail(result.reason.stack); + else t.deepEqual(result.value, new Map()); +});