/
action.test.js
102 lines (91 loc) · 2.33 KB
/
action.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
describe("detect if pull request is draft", () => {
jest.mock("./lib/actions/octokit");
const { getPullDraft } = require("./action");
it("should detect draft", async () => {
expect(
getPullDraft({
draft: true,
})
).toBe(true);
});
it("should detect non draft", async () => {
expect(
getPullDraft({
draft: false,
})
).toBe(false);
});
});
describe("author", () => {
jest.mock("./lib/actions/octokit");
const { getPullAuthor } = require("./action");
it("should return author", async () => {
expect(
getPullAuthor({
user: { login: "foo" },
})
).toBe("foo");
});
});
describe("pull number", () => {
jest.mock("./lib/actions/octokit");
const { getPullNumber } = require("./action");
it("should return pull number", async () => {
expect(
getPullNumber({
number: 42,
})
).toBe(42);
});
});
describe("pull base", () => {
jest.mock("./lib/actions/octokit");
const { getPullBase } = require("./action");
it("should return pull base", async () => {
expect(
getPullBase({
base: {
ref: "master",
repo: {
owner: { login: "mobsuccess-devops" },
name: "github-actions-review",
},
},
})
).toStrictEqual({
baseRef: "master",
owner: "mobsuccess-devops",
repo: "github-actions-review",
});
});
});
describe("pull requested reviewers", () => {
jest.mock("./lib/actions/octokit");
const { getPullRequestedReviewers } = require("./action");
it("should return pull requested reviewers", async () => {
expect(
getPullRequestedReviewers({
requested_reviewers: [1, 2, 3],
})
).toEqual([1, 2, 3]);
});
});
describe("check if review has been requested", () => {
jest.mock("./lib/actions/octokit");
const { getHasRequestedReview } = require("./action");
it("should detect no review has been requested", async () => {
expect(
getHasRequestedReview([{ body: "coucou", user: { login: "thomas" } }])
).toBe(false);
});
it("should detect review has been requested", async () => {
expect(
getHasRequestedReview([
{
body: "A review for this PR has been requested in Slack: <link>",
user: { login: "ms-bot" },
},
])
).toBe(true);
});
});