mirror of
https://github.com/docker/build-push-action.git
synced 2024-12-26 00:32:08 -05:00
Merge pull request #102 from crazy-max/v2-fix-input-list
Exclude empty items from input list
This commit is contained in:
commit
85d408708d
3 changed files with 21 additions and 2 deletions
|
@ -15,6 +15,13 @@ describe('getInputList', () => {
|
||||||
expect(res).toEqual(['bar', 'baz']);
|
expect(res).toEqual(['bar', 'baz']);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('remove empty lines correctly', async () => {
|
||||||
|
setInput('foo', 'bar\n\nbaz');
|
||||||
|
const res = await context.getInputList('foo');
|
||||||
|
console.log(res);
|
||||||
|
expect(res).toEqual(['bar', 'baz']);
|
||||||
|
});
|
||||||
|
|
||||||
it('handles comma correctly', async () => {
|
it('handles comma correctly', async () => {
|
||||||
setInput('foo', 'bar,baz');
|
setInput('foo', 'bar,baz');
|
||||||
const res = await context.getInputList('foo');
|
const res = await context.getInputList('foo');
|
||||||
|
@ -22,6 +29,13 @@ describe('getInputList', () => {
|
||||||
expect(res).toEqual(['bar', 'baz']);
|
expect(res).toEqual(['bar', 'baz']);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('remove empty result correctly', async () => {
|
||||||
|
setInput('foo', 'bar,baz,');
|
||||||
|
const res = await context.getInputList('foo');
|
||||||
|
console.log(res);
|
||||||
|
expect(res).toEqual(['bar', 'baz']);
|
||||||
|
});
|
||||||
|
|
||||||
it('handles different new lines correctly', async () => {
|
it('handles different new lines correctly', async () => {
|
||||||
setInput('foo', 'bar\r\nbaz');
|
setInput('foo', 'bar\r\nbaz');
|
||||||
const res = await context.getInputList('foo');
|
const res = await context.getInputList('foo');
|
||||||
|
|
3
dist/index.js
generated
vendored
3
dist/index.js
generated
vendored
|
@ -13746,7 +13746,8 @@ function getInputList(name, ignoreComma) {
|
||||||
}
|
}
|
||||||
return items
|
return items
|
||||||
.split(/\r?\n/)
|
.split(/\r?\n/)
|
||||||
.reduce((acc, line) => acc.concat(!ignoreComma ? line.split(',') : line).map(pat => pat.trim()), []);
|
.filter(x => x)
|
||||||
|
.reduce((acc, line) => acc.concat(!ignoreComma ? line.split(',').filter(x => x) : line).map(pat => pat.trim()), []);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
exports.getInputList = getInputList;
|
exports.getInputList = getInputList;
|
||||||
|
|
|
@ -128,7 +128,11 @@ export async function getInputList(name: string, ignoreComma?: boolean): Promise
|
||||||
}
|
}
|
||||||
return items
|
return items
|
||||||
.split(/\r?\n/)
|
.split(/\r?\n/)
|
||||||
.reduce<string[]>((acc, line) => acc.concat(!ignoreComma ? line.split(',') : line).map(pat => pat.trim()), []);
|
.filter(x => x)
|
||||||
|
.reduce<string[]>(
|
||||||
|
(acc, line) => acc.concat(!ignoreComma ? line.split(',').filter(x => x) : line).map(pat => pat.trim()),
|
||||||
|
[]
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
export const asyncForEach = async (array, callback) => {
|
export const asyncForEach = async (array, callback) => {
|
||||||
|
|
Loading…
Reference in a new issue