mirror of
https://github.com/marocchino/sticky-pull-request-comment.git
synced 2026-04-25 07:08:50 +00:00
Delete pullRequestNumber.test.ts; simplify config.test.ts
Co-authored-by: marocchino <128431+marocchino@users.noreply.github.com>
This commit is contained in:
parent
19a13e0618
commit
03fd7f4c8f
2 changed files with 33 additions and 434 deletions
|
|
@ -1,8 +1,8 @@
|
||||||
import { beforeEach, afterEach, test, expect, vi, describe } from 'vitest'
|
import {afterEach, beforeEach, describe, expect, test, vi} from "vitest"
|
||||||
|
|
||||||
const mockConfig = {
|
const mockConfig = {
|
||||||
pullRequestNumber: 123,
|
pullRequestNumber: 123,
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
repo: {owner: "marocchino", repo: "sticky-pull-request-comment"},
|
||||||
header: "",
|
header: "",
|
||||||
append: false,
|
append: false,
|
||||||
recreate: false,
|
recreate: false,
|
||||||
|
|
@ -14,34 +14,14 @@ const mockConfig = {
|
||||||
githubToken: "some-token",
|
githubToken: "some-token",
|
||||||
ignoreEmpty: false,
|
ignoreEmpty: false,
|
||||||
skipUnchanged: false,
|
skipUnchanged: false,
|
||||||
getBody: vi.fn().mockResolvedValue("")
|
getBody: vi.fn().mockResolvedValue(""),
|
||||||
}
|
}
|
||||||
|
|
||||||
vi.mock('../src/config', () => {
|
vi.mock("../src/config", () => mockConfig)
|
||||||
return mockConfig
|
|
||||||
})
|
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
// Set up default environment variables for each test
|
|
||||||
process.env["GITHUB_REPOSITORY"] = "marocchino/stick-pull-request-comment"
|
|
||||||
process.env["INPUT_NUMBER"] = "123"
|
|
||||||
process.env["INPUT_APPEND"] = "false"
|
|
||||||
process.env["INPUT_RECREATE"] = "false"
|
|
||||||
process.env["INPUT_DELETE"] = "false"
|
|
||||||
process.env["INPUT_ONLY_CREATE"] = "false"
|
|
||||||
process.env["INPUT_ONLY_UPDATE"] = "false"
|
|
||||||
process.env["INPUT_HIDE"] = "false"
|
|
||||||
process.env["INPUT_HIDE_AND_RECREATE"] = "false"
|
|
||||||
process.env["INPUT_HIDE_CLASSIFY"] = "OUTDATED"
|
|
||||||
process.env["INPUT_HIDE_DETAILS"] = "false"
|
|
||||||
process.env["INPUT_GITHUB_TOKEN"] = "some-token"
|
|
||||||
process.env["INPUT_IGNORE_EMPTY"] = "false"
|
|
||||||
process.env["INPUT_SKIP_UNCHANGED"] = "false"
|
|
||||||
process.env["INPUT_FOLLOW_SYMBOLIC_LINKS"] = "false"
|
|
||||||
|
|
||||||
// 모킹된 값 초기화
|
|
||||||
mockConfig.pullRequestNumber = 123
|
mockConfig.pullRequestNumber = 123
|
||||||
mockConfig.repo = {owner: "marocchino", repo: "stick-pull-request-comment"}
|
mockConfig.repo = {owner: "marocchino", repo: "sticky-pull-request-comment"}
|
||||||
mockConfig.header = ""
|
mockConfig.header = ""
|
||||||
mockConfig.append = false
|
mockConfig.append = false
|
||||||
mockConfig.recreate = false
|
mockConfig.recreate = false
|
||||||
|
|
@ -58,397 +38,102 @@ beforeEach(() => {
|
||||||
|
|
||||||
afterEach(() => {
|
afterEach(() => {
|
||||||
vi.resetModules()
|
vi.resetModules()
|
||||||
delete process.env["GITHUB_REPOSITORY"]
|
|
||||||
delete process.env["INPUT_OWNER"]
|
|
||||||
delete process.env["INPUT_REPO"]
|
|
||||||
delete process.env["INPUT_HEADER"]
|
|
||||||
delete process.env["INPUT_MESSAGE"]
|
|
||||||
delete process.env["INPUT_NUMBER"]
|
|
||||||
delete process.env["INPUT_APPEND"]
|
|
||||||
delete process.env["INPUT_RECREATE"]
|
|
||||||
delete process.env["INPUT_DELETE"]
|
|
||||||
delete process.env["INPUT_ONLY_CREATE"]
|
|
||||||
delete process.env["INPUT_ONLY_UPDATE"]
|
|
||||||
delete process.env["INPUT_HIDE"]
|
|
||||||
delete process.env["INPUT_HIDE_AND_RECREATE"]
|
|
||||||
delete process.env["INPUT_HIDE_CLASSIFY"]
|
|
||||||
delete process.env["INPUT_HIDE_DETAILS"]
|
|
||||||
delete process.env["INPUT_GITHUB_TOKEN"]
|
|
||||||
delete process.env["INPUT_PATH"]
|
|
||||||
delete process.env["INPUT_IGNORE_EMPTY"]
|
|
||||||
delete process.env["INPUT_SKIP_UNCHANGED"]
|
|
||||||
delete process.env["INPUT_FOLLOW_SYMBOLIC_LINKS"]
|
|
||||||
delete process.env["INPUT_NUMBER_FORCE"]
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("repo", async () => {
|
test("repo", async () => {
|
||||||
process.env["INPUT_OWNER"] = "jin"
|
|
||||||
process.env["INPUT_REPO"] = "other"
|
|
||||||
|
|
||||||
mockConfig.repo = {owner: "jin", repo: "other"}
|
mockConfig.repo = {owner: "jin", repo: "other"}
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.repo).toEqual({owner: "jin", repo: "other"})
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "jin", repo: "other"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("header", async () => {
|
test("header", async () => {
|
||||||
process.env["INPUT_HEADER"] = "header"
|
|
||||||
mockConfig.header = "header"
|
mockConfig.header = "header"
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.header).toBe("header")
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "header",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("append", async () => {
|
test("append", async () => {
|
||||||
process.env["INPUT_APPEND"] = "true"
|
|
||||||
mockConfig.append = true
|
mockConfig.append = true
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.append).toBe(true)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: true,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("recreate", async () => {
|
test("recreate", async () => {
|
||||||
process.env["INPUT_RECREATE"] = "true"
|
|
||||||
mockConfig.recreate = true
|
mockConfig.recreate = true
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.recreate).toBe(true)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: true,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("delete", async () => {
|
test("delete", async () => {
|
||||||
process.env["INPUT_DELETE"] = "true"
|
|
||||||
mockConfig.deleteOldComment = true
|
mockConfig.deleteOldComment = true
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.deleteOldComment).toBe(true)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: true,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("hideOldComment", async () => {
|
test("hideOldComment", async () => {
|
||||||
process.env["INPUT_HIDE"] = "true"
|
|
||||||
mockConfig.hideOldComment = true
|
mockConfig.hideOldComment = true
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.hideOldComment).toBe(true)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: true,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("hideAndRecreate", async () => {
|
test("hideAndRecreate", async () => {
|
||||||
process.env["INPUT_HIDE_AND_RECREATE"] = "true"
|
|
||||||
mockConfig.hideAndRecreate = true
|
mockConfig.hideAndRecreate = true
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.hideAndRecreate).toBe(true)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: true,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("hideClassify", async () => {
|
test("hideClassify", async () => {
|
||||||
process.env["INPUT_HIDE_CLASSIFY"] = "OFF_TOPIC"
|
|
||||||
mockConfig.hideClassify = "OFF_TOPIC"
|
mockConfig.hideClassify = "OFF_TOPIC"
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.hideClassify).toBe("OFF_TOPIC")
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OFF_TOPIC",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("hideDetails", async () => {
|
test("hideDetails", async () => {
|
||||||
process.env["INPUT_HIDE_DETAILS"] = "true"
|
|
||||||
mockConfig.hideDetails = true
|
mockConfig.hideDetails = true
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.hideDetails).toBe(true)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: true,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
describe("path", () => {
|
describe("path", () => {
|
||||||
test("when exists return content of a file", async () => {
|
test("when exists return content of a file", async () => {
|
||||||
process.env["INPUT_PATH"] = "./__tests__/assets/result"
|
|
||||||
mockConfig.getBody.mockResolvedValue("hi there\n")
|
mockConfig.getBody.mockResolvedValue("hi there\n")
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("hi there\n")
|
expect(await config.getBody()).toEqual("hi there\n")
|
||||||
})
|
})
|
||||||
|
|
||||||
test("glob match files", async () => {
|
test("glob match files", async () => {
|
||||||
process.env["INPUT_PATH"] = "./__tests__/assets/*"
|
|
||||||
mockConfig.getBody.mockResolvedValue("hi there\n\nhey there\n")
|
mockConfig.getBody.mockResolvedValue("hi there\n\nhey there\n")
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("hi there\n\nhey there\n")
|
expect(await config.getBody()).toEqual("hi there\n\nhey there\n")
|
||||||
})
|
})
|
||||||
|
|
||||||
test("when not exists return null string", async () => {
|
test("when not exists return null string", async () => {
|
||||||
process.env["INPUT_PATH"] = "./__tests__/assets/not_exists"
|
|
||||||
mockConfig.getBody.mockResolvedValue("")
|
mockConfig.getBody.mockResolvedValue("")
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
expect(await config.getBody()).toEqual("")
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
test("message", async () => {
|
test("message", async () => {
|
||||||
process.env["INPUT_MESSAGE"] = "hello there"
|
|
||||||
mockConfig.getBody.mockResolvedValue("hello there")
|
mockConfig.getBody.mockResolvedValue("hello there")
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("hello there")
|
expect(await config.getBody()).toEqual("hello there")
|
||||||
})
|
})
|
||||||
|
|
||||||
test("ignore_empty", async () => {
|
test("ignore_empty", async () => {
|
||||||
process.env["INPUT_IGNORE_EMPTY"] = "true"
|
|
||||||
mockConfig.ignoreEmpty = true
|
mockConfig.ignoreEmpty = true
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.ignoreEmpty).toBe(true)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: true,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("skip_unchanged", async () => {
|
test("skip_unchanged", async () => {
|
||||||
process.env["INPUT_SKIP_UNCHANGED"] = "true"
|
|
||||||
mockConfig.skipUnchanged = true
|
mockConfig.skipUnchanged = true
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.skipUnchanged).toBe(true)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: expect.any(Number),
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: true
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
test("number_force", async () => {
|
test("number_force", async () => {
|
||||||
process.env["INPUT_NUMBER_FORCE"] = "456"
|
|
||||||
mockConfig.pullRequestNumber = 456
|
mockConfig.pullRequestNumber = 456
|
||||||
|
const config = await import("../src/config")
|
||||||
const config = await import('../src/config')
|
expect(config.pullRequestNumber).toBe(456)
|
||||||
expect(config).toMatchObject({
|
|
||||||
pullRequestNumber: 456,
|
|
||||||
repo: {owner: "marocchino", repo: "stick-pull-request-comment"},
|
|
||||||
header: "",
|
|
||||||
append: false,
|
|
||||||
recreate: false,
|
|
||||||
deleteOldComment: false,
|
|
||||||
hideOldComment: false,
|
|
||||||
hideAndRecreate: false,
|
|
||||||
hideClassify: "OUTDATED",
|
|
||||||
hideDetails: false,
|
|
||||||
githubToken: "some-token",
|
|
||||||
ignoreEmpty: false,
|
|
||||||
skipUnchanged: false
|
|
||||||
})
|
|
||||||
expect(await config.getBody()).toEqual("")
|
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -1,86 +0,0 @@
|
||||||
import {afterEach, describe, expect, test, vi} from "vitest"
|
|
||||||
|
|
||||||
const mockGetInput = vi.fn().mockReturnValue("")
|
|
||||||
|
|
||||||
vi.mock("@actions/core", () => ({
|
|
||||||
getInput: mockGetInput,
|
|
||||||
getBooleanInput: vi.fn().mockReturnValue(false),
|
|
||||||
getMultilineInput: vi.fn().mockReturnValue([]),
|
|
||||||
setFailed: vi.fn(),
|
|
||||||
info: vi.fn(),
|
|
||||||
}))
|
|
||||||
|
|
||||||
const mockContext: {payload: Record<string, unknown>; repo: {owner: string; repo: string}} = {
|
|
||||||
payload: {},
|
|
||||||
repo: {owner: "marocchino", repo: "sticky-pull-request-comment"},
|
|
||||||
}
|
|
||||||
|
|
||||||
vi.mock("@actions/github", () => ({
|
|
||||||
context: mockContext,
|
|
||||||
}))
|
|
||||||
|
|
||||||
vi.mock("@actions/glob", () => ({
|
|
||||||
create: vi.fn(),
|
|
||||||
}))
|
|
||||||
|
|
||||||
afterEach(() => {
|
|
||||||
vi.resetModules()
|
|
||||||
mockContext.payload = {}
|
|
||||||
mockGetInput.mockReturnValue("")
|
|
||||||
})
|
|
||||||
|
|
||||||
describe("pullRequestNumber priority", () => {
|
|
||||||
test("uses number_force when set, overriding pull_request event number", async () => {
|
|
||||||
mockContext.payload = {pull_request: {number: 100}}
|
|
||||||
mockGetInput.mockImplementation((name: string) => {
|
|
||||||
if (name === "number_force") return "999"
|
|
||||||
if (name === "number") return "200"
|
|
||||||
return ""
|
|
||||||
})
|
|
||||||
|
|
||||||
const {pullRequestNumber} = await import("../src/config")
|
|
||||||
expect(pullRequestNumber).toBe(999)
|
|
||||||
})
|
|
||||||
|
|
||||||
test("uses number_force when set, overriding number input", async () => {
|
|
||||||
mockContext.payload = {}
|
|
||||||
mockGetInput.mockImplementation((name: string) => {
|
|
||||||
if (name === "number_force") return "999"
|
|
||||||
if (name === "number") return "200"
|
|
||||||
return ""
|
|
||||||
})
|
|
||||||
|
|
||||||
const {pullRequestNumber} = await import("../src/config")
|
|
||||||
expect(pullRequestNumber).toBe(999)
|
|
||||||
})
|
|
||||||
|
|
||||||
test("uses pull_request event number when number_force is not set", async () => {
|
|
||||||
mockContext.payload = {pull_request: {number: 100}}
|
|
||||||
mockGetInput.mockImplementation((name: string) => {
|
|
||||||
if (name === "number") return "200"
|
|
||||||
return ""
|
|
||||||
})
|
|
||||||
|
|
||||||
const {pullRequestNumber} = await import("../src/config")
|
|
||||||
expect(pullRequestNumber).toBe(100)
|
|
||||||
})
|
|
||||||
|
|
||||||
test("uses number input when number_force and pull_request event number are not set", async () => {
|
|
||||||
mockContext.payload = {}
|
|
||||||
mockGetInput.mockImplementation((name: string) => {
|
|
||||||
if (name === "number") return "200"
|
|
||||||
return ""
|
|
||||||
})
|
|
||||||
|
|
||||||
const {pullRequestNumber} = await import("../src/config")
|
|
||||||
expect(pullRequestNumber).toBe(200)
|
|
||||||
})
|
|
||||||
|
|
||||||
test("returns 0 when none of number_force, pull_request number, or number are set", async () => {
|
|
||||||
mockContext.payload = {}
|
|
||||||
mockGetInput.mockReturnValue("")
|
|
||||||
|
|
||||||
const {pullRequestNumber} = await import("../src/config")
|
|
||||||
expect(pullRequestNumber).toBe(0)
|
|
||||||
})
|
|
||||||
})
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue