mirror of
https://code.forgejo.org/actions/cache.git
synced 2024-11-24 04:29:16 +01:00
Sort inputs and remove whitespaces after exclamation at the beginning of lines
This commit is contained in:
parent
9c77c9dbfc
commit
2bdaf00273
3 changed files with 34 additions and 3 deletions
|
@ -213,6 +213,36 @@ test("getInputAsArray handles empty lines correctly", () => {
|
||||||
expect(actionUtils.getInputAsArray("foo")).toEqual(["bar", "baz"]);
|
expect(actionUtils.getInputAsArray("foo")).toEqual(["bar", "baz"]);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("getInputAsArray sorts files correctly", () => {
|
||||||
|
testUtils.setInput("foo", "bar\n!baz\nwaldo\nqux\nquux\ncorge\ngrault\ngarply");
|
||||||
|
expect(actionUtils.getInputAsArray("foo")).toEqual([
|
||||||
|
"!baz",
|
||||||
|
"bar",
|
||||||
|
"corge",
|
||||||
|
"garply",
|
||||||
|
"grault",
|
||||||
|
"quux",
|
||||||
|
"qux",
|
||||||
|
"waldo"
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
|
||||||
|
test("getInputAsArray removes spaces after ! at the beginning", () => {
|
||||||
|
testUtils.setInput(
|
||||||
|
"foo",
|
||||||
|
"! bar\n! baz\n! qux\n!quux\ncorge\ngrault! garply\n!\r\t waldo"
|
||||||
|
);
|
||||||
|
expect(actionUtils.getInputAsArray("foo")).toEqual([
|
||||||
|
"!bar",
|
||||||
|
"!baz",
|
||||||
|
"!quux",
|
||||||
|
"!qux",
|
||||||
|
"!waldo",
|
||||||
|
"corge",
|
||||||
|
"grault! garply"
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
|
||||||
test("getInputAsInt returns undefined if input not set", () => {
|
test("getInputAsInt returns undefined if input not set", () => {
|
||||||
expect(actionUtils.getInputAsInt("undefined")).toBeUndefined();
|
expect(actionUtils.getInputAsInt("undefined")).toBeUndefined();
|
||||||
});
|
});
|
||||||
|
|
|
@ -97,7 +97,7 @@ test("restore with no key", async () => {
|
||||||
test("restore with too many keys should fail", async () => {
|
test("restore with too many keys should fail", async () => {
|
||||||
const path = "node_modules";
|
const path = "node_modules";
|
||||||
const key = "node-test";
|
const key = "node-test";
|
||||||
const restoreKeys = [...Array(20).keys()].map(x => x.toString());
|
const restoreKeys = [...Array(20).keys()].map(x => x.toString()).sort();
|
||||||
testUtils.setInputs({
|
testUtils.setInputs({
|
||||||
path: path,
|
path: path,
|
||||||
key,
|
key,
|
||||||
|
|
|
@ -60,8 +60,9 @@ export function getInputAsArray(
|
||||||
return core
|
return core
|
||||||
.getInput(name, options)
|
.getInput(name, options)
|
||||||
.split("\n")
|
.split("\n")
|
||||||
.map(s => s.trim())
|
.map(s => s.replace(/^\!\s+/, '!').trim())
|
||||||
.filter(x => x !== "");
|
.filter(x => x !== "")
|
||||||
|
.sort();
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getInputAsInt(
|
export function getInputAsInt(
|
||||||
|
|
Loading…
Reference in a new issue