Skip to content

Commit

Permalink
switch package to use modules
Browse files Browse the repository at this point in the history
  • Loading branch information
s0 committed Jul 27, 2024
1 parent 4022671 commit 516a428
Show file tree
Hide file tree
Showing 10 changed files with 52 additions and 31 deletions.
11 changes: 11 additions & 0 deletions jest.integration.config.cjs
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
const { randomBytes } = require("crypto");
const path = require("path");
const os = require("os");

const ROOT_TEST_BRANCH_PREFIX = `test-${randomBytes(4).toString("hex")}`;
const ROOT_TEMP_DIRECTORY = path.join(os.tmpdir(), ROOT_TEST_BRANCH_PREFIX);

module.exports = {
preset: "ts-jest",
testEnvironment: "node",
Expand All @@ -17,4 +24,8 @@ module.exports = {
"^(.+).js$": "$1",
},
testMatch: ["<rootDir>/src/test/integration/**/*.test.ts"],
globals: {
ROOT_TEST_BRANCH_PREFIX,
ROOT_TEMP_DIRECTORY,
},
};
8 changes: 4 additions & 4 deletions src/core.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import type {
CommitMessage,
FileChanges,
} from "./github/graphql/generated/types";
} from "./github/graphql/generated/types.js";
import {
createCommitOnBranchQuery,
createRefMutation,
getRepositoryMetadata,
GitHubClient,
} from "./github/graphql/queries";
import type { CreateCommitOnBranchMutationVariables } from "./github/graphql/generated/operations";
import type { Logger } from "./logging";
} from "./github/graphql/queries.js";
import type { CreateCommitOnBranchMutationVariables } from "./github/graphql/generated/operations.js";
import type { Logger } from "./logging.js";

export type CommitFilesResult = {
refId: string | null;
Expand Down
6 changes: 3 additions & 3 deletions src/fs.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { promises as fs } from "fs";
import * as path from "path";
import type { FileAddition } from "./github/graphql/generated/types";
import { CommitFilesFromBase64Args, CommitFilesResult } from "./core";
import { commitFilesFromBuffers } from "./node";
import type { FileAddition } from "./github/graphql/generated/types.js";
import { CommitFilesFromBase64Args, CommitFilesResult } from "./core.js";
import { commitFilesFromBuffers } from "./node.js";

export type CommitFilesFromDirectoryArgs = Omit<
CommitFilesFromBase64Args,
Expand Down
2 changes: 1 addition & 1 deletion src/github/graphql/queries.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import type {
DeleteRefMutationVariables,
GetRepositoryMetadataQuery,
GetRepositoryMetadataQueryVariables,
} from "./generated/operations";
} from "./generated/operations.js";

const GET_REPOSITORY_METADATA = /* GraphQL */ `
query getRepositoryMetadata($owner: String!, $name: String!, $ref: String!) {
Expand Down
4 changes: 2 additions & 2 deletions src/index.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
export * as queries from "./github/graphql/queries";
export { commitFilesFromDirectory } from "./fs";
export * as queries from "./github/graphql/queries.js";
export { commitFilesFromDirectory } from "./fs.js";
2 changes: 1 addition & 1 deletion src/node.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import {
commitFilesFromBase64,
CommitFilesFromBase64Args,
CommitFilesResult,
} from "./core";
} from "./core.js";

export type CommitFilesFromBuffersArgs = Omit<
CommitFilesFromBase64Args,
Expand Down
10 changes: 9 additions & 1 deletion src/test/integration/env.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
import pino from "pino";
import { pino } from "pino";
import { configDotenv } from "dotenv";

declare namespace global {
const ROOT_TEST_BRANCH_PREFIX: string;
const ROOT_TEMP_DIRECTORY: string;
}

export const ROOT_TEST_BRANCH_PREFIX = global.ROOT_TEST_BRANCH_PREFIX;
export const ROOT_TEMP_DIRECTORY = global.ROOT_TEMP_DIRECTORY;

configDotenv();

const GITHUB_TOKEN = process.env.GITHUB_TOKEN;
Expand Down
25 changes: 14 additions & 11 deletions src/test/integration/fs.test.ts
Original file line number Diff line number Diff line change
@@ -1,26 +1,29 @@
import * as os from "os";
import * as path from "path";
import { promises as fs } from "fs";
import { getOctokit } from "@actions/github/lib/github";

import { commitFilesFromDirectory } from "../../fs";
import { randomBytes } from "crypto";
import { ENV, REPO, log } from "./env";
import { deleteBranches } from "./util";
import { getOctokit } from "@actions/github/lib/github.js";

import { commitFilesFromDirectory } from "../../fs.js";
import {
ENV,
REPO,
ROOT_TEMP_DIRECTORY,
ROOT_TEST_BRANCH_PREFIX,
log,
} from "./env.js";
import { deleteBranches } from "./util.js";

const octokit = getOctokit(ENV.GITHUB_TOKEN);

const TEST_BRANCH_PREFIX = `test-fs-${randomBytes(4).toString("hex")}`;

const TEST_BRANCHES = {
COMMIT_FILE: `${TEST_BRANCH_PREFIX}-commit-file`,
COMMIT_FILE: `${ROOT_TEST_BRANCH_PREFIX}-fs-commit-file`,
} as const;

describe("fs", () => {
describe("commitFilesFromDirectory", () => {
it("should commit a file", async () => {
// Create test directory
const tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), "test-"));
await fs.mkdir(ROOT_TEMP_DIRECTORY, { recursive: true });
const tmpDir = await fs.mkdtemp(path.join(ROOT_TEMP_DIRECTORY, "test-"));
await fs.writeFile(path.join(tmpDir, "foo.txt"), "Hello, world!");

await commitFilesFromDirectory({
Expand Down
11 changes: 5 additions & 6 deletions src/test/integration/node.test.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
import { getOctokit } from "@actions/github/lib/github";
import { getOctokit } from "@actions/github/lib/github.js";

import { randomBytes } from "crypto";
import { ENV, REPO, log } from "./env";
import { commitFilesFromBuffers } from "../../node";
import { deleteBranches } from "./util";
import { ENV, REPO, ROOT_TEST_BRANCH_PREFIX, log } from "./env.js";
import { commitFilesFromBuffers } from "../../node.js";
import { deleteBranches } from "./util.js";

const octokit = getOctokit(ENV.GITHUB_TOKEN);

const TEST_BRANCH_PREFIX = `test-node-${randomBytes(4).toString("hex")}`;
const TEST_BRANCH_PREFIX = `${ROOT_TEST_BRANCH_PREFIX}-node`;

describe("node", () => {
const branches: string[] = [];
Expand Down
4 changes: 2 additions & 2 deletions src/test/integration/util.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import {
deleteRefMutation,
getRepositoryMetadata,
GitHubClient,
} from "../../github/graphql/queries";
import { REPO } from "./env";
} from "../../github/graphql/queries.js";
import { REPO } from "./env.js";

export const deleteBranches = async (
octokit: GitHubClient,
Expand Down

0 comments on commit 516a428

Please sign in to comment.