From 4990bf597e1484173dc32eddcc6c4146d732ae80 Mon Sep 17 00:00:00 2001 From: Gustavo Perdomo Date: Wed, 22 May 2024 12:25:08 -0400 Subject: [PATCH] fix(core): fix issue getting prefixed variables fix issue getting prefixed variables for lists fix #1045 --- packages/core/src/lib/get-input-list.spec.ts | 16 ++++++++++++++++ packages/core/src/lib/get-input-list.ts | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/packages/core/src/lib/get-input-list.spec.ts b/packages/core/src/lib/get-input-list.spec.ts index 4a1ad6c5..c6780d77 100644 --- a/packages/core/src/lib/get-input-list.spec.ts +++ b/packages/core/src/lib/get-input-list.spec.ts @@ -204,6 +204,22 @@ ccccccccc`, setInput('outputs', output); expect(getInputList('outputs', { ignoreComma: true, quote: false })).toEqual([output]); }); + + describe('prefix', () => { + it('getInputList should use return prefixed value if prefixed input exists', async () => { + await setInput('foo', 'bar'); + await setInput('prefixed-foo', 'prefixed-bar'); + + const res = getInputList('foo', { prefix: 'prefixed' }); + expect(res).toEqual(['prefixed-bar']); + }); + + it('getInputList should use return unprefixed value if prefixed input is missing', async () => { + await setInput('abc', 'bar,xyz'); + expect(getInputList('abc', { prefix: 'prefixed' })).toEqual(['bar', 'xyz']); + expect(getInputList('abc')).toEqual(['bar', 'xyz']); + }); + }); }); function setInput(name: string, value: string): void { diff --git a/packages/core/src/lib/get-input-list.ts b/packages/core/src/lib/get-input-list.ts index 4575aefd..7c299d81 100644 --- a/packages/core/src/lib/get-input-list.ts +++ b/packages/core/src/lib/get-input-list.ts @@ -10,7 +10,7 @@ export interface ListOpts { } export function getInputList(name: string, opts?: ListOpts): string[] { - return getList(getInput(name), opts); + return getList(getInput(name, { prefix: opts?.prefix }), opts); } export function getList(input: string, opts?: ListOpts): string[] {