mirror of
https://code.forgejo.org/actions/cache.git
synced 2025-06-08 07:21:14 +08:00
Add initial minimatch support
This commit is contained in:
parent
84cead4a82
commit
1e233443e8
14 changed files with 202 additions and 108 deletions
42
__tests__/pathUtils.test.ts
Normal file
42
__tests__/pathUtils.test.ts
Normal file
|
@ -0,0 +1,42 @@
|
|||
import * as path from "path";
|
||||
import * as os from "os";
|
||||
import * as pathUtils from "../src/utils/pathUtils";
|
||||
|
||||
jest.mock("@actions/core");
|
||||
jest.mock("os");
|
||||
|
||||
test("expandPaths with no ~ in path", () => {
|
||||
const filePath = ".cache/yarn";
|
||||
|
||||
const resolvedPath = pathUtils.expandPaths([filePath]);
|
||||
|
||||
const expectedPath = [path.resolve(filePath)];
|
||||
expect(resolvedPath).toStrictEqual(expectedPath);
|
||||
});
|
||||
|
||||
test("expandPaths with ~ in path", () => {
|
||||
const filePath = "~/.cache/yarn";
|
||||
|
||||
const homedir = jest.requireActual("os").homedir();
|
||||
const homedirMock = jest.spyOn(os, "homedir");
|
||||
homedirMock.mockImplementation(() => {
|
||||
return homedir;
|
||||
});
|
||||
|
||||
const resolvedPath = pathUtils.expandPaths([filePath]);
|
||||
|
||||
const expectedPath = [path.join(homedir, ".cache/yarn")];
|
||||
expect(resolvedPath).toStrictEqual(expectedPath);
|
||||
});
|
||||
|
||||
test("expandPaths with home not found", () => {
|
||||
const filePath = "~/.cache/yarn";
|
||||
const homedirMock = jest.spyOn(os, "homedir");
|
||||
homedirMock.mockImplementation(() => {
|
||||
return "";
|
||||
});
|
||||
|
||||
expect(() => pathUtils.expandPaths([filePath])).toThrow(
|
||||
"Unable to resolve `~` to HOME"
|
||||
);
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue