From e65875d126b0ead58dba01449a7553819227f2e3 Mon Sep 17 00:00:00 2001 From: nicktrn <55853254+nicktrn@users.noreply.github.com> Date: Wed, 2 Jul 2025 17:05:30 +0100 Subject: [PATCH] tag parsing tests --- .../webapp/test/getDeploymentImageRef.test.ts | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/apps/webapp/test/getDeploymentImageRef.test.ts b/apps/webapp/test/getDeploymentImageRef.test.ts index e3f9e2a7a..b3b9ca571 100644 --- a/apps/webapp/test/getDeploymentImageRef.test.ts +++ b/apps/webapp/test/getDeploymentImageRef.test.ts @@ -170,3 +170,46 @@ describe("parseEcrRegistry", () => { } }); }); + +describe("parseRegistryTags", () => { + it("should handle empty or null input", () => { + expect(parseRegistryTags("")).toEqual([]); + expect(parseRegistryTags(",,,")).toEqual([]); + }); + + it("should parse key-only tags", () => { + expect(parseRegistryTags("key1,key2")).toEqual([ + { Key: "key1", Value: "" }, + { Key: "key2", Value: "" }, + ]); + }); + + it("should parse key-value tags", () => { + expect(parseRegistryTags("key1=value1,key2=value2")).toEqual([ + { Key: "key1", Value: "value1" }, + { Key: "key2", Value: "value2" }, + ]); + }); + + it("should handle mixed key-only and key-value tags", () => { + expect(parseRegistryTags("key1,key2=value2,key3")).toEqual([ + { Key: "key1", Value: "" }, + { Key: "key2", Value: "value2" }, + { Key: "key3", Value: "" }, + ]); + }); + + it("should handle whitespace", () => { + expect(parseRegistryTags(" key1 , key2 = value2 ")).toEqual([ + { Key: "key1", Value: "" }, + { Key: "key2", Value: "value2" }, + ]); + }); + + it("should skip invalid tags", () => { + expect(parseRegistryTags("=value,key1,=,key2=value2")).toEqual([ + { Key: "key1", Value: "" }, + { Key: "key2", Value: "value2" }, + ]); + }); +});