Skip to content

Commit 060d663

Browse files
committed
fix(auto-merge): Forward squash config
1 parent 6a644e3 commit 060d663

File tree

2 files changed

+13
-9
lines changed

2 files changed

+13
-9
lines changed

packages/auto-merge/src/AutoMerge.test.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ describe('AutoMerge', () => {
5454
.persist();
5555

5656
nock(autoMerge['apiClient'].defaults.baseURL!)
57-
.post(/^\/repos\/[^/]+\/[^/]+\/issues\/\d+\/comments\/?$/)
58-
.reply(HTTP_STATUS.CREATED, {data: 'not-used'})
57+
.put(/^\/repos\/[^/]+\/[^/]+\/pulls\/\d+\/merge\/?$/)
58+
.reply(HTTP_STATUS.OK, {data: 'not-used'})
5959
.persist();
6060
});
6161

@@ -106,20 +106,22 @@ describe('AutoMerge', () => {
106106

107107
describe('mergeByMatch', () => {
108108
test('merge matching PRs', async () => {
109-
vi.spyOn<any, any>(autoMerge, 'postMerge');
109+
vi.spyOn<any, any>(autoMerge, 'putMerge');
110110

111111
await autoMerge.mergeByMatch(/eslint/gi, repositories);
112112
const expectedRepositoryESLint = repositories[0];
113-
expect(autoMerge['postMerge']).toHaveBeenCalledWith(
113+
expect(autoMerge['putMerge']).toHaveBeenCalledWith(
114114
expectedRepositoryESLint.repositorySlug,
115-
expectedRepositoryESLint.pullRequests[0].number
115+
expectedRepositoryESLint.pullRequests[0].number,
116+
false
116117
);
117118

118119
await autoMerge.mergeByMatch(/typescript-4.0.3/gi, repositories);
119120
const expectedRepositoryTypescript = repositories[1];
120-
expect(autoMerge['postMerge']).toHaveBeenCalledWith(
121+
expect(autoMerge['putMerge']).toHaveBeenCalledWith(
121122
expectedRepositoryTypescript.repositorySlug,
122-
expectedRepositoryTypescript.pullRequests[0].number
123+
expectedRepositoryTypescript.pullRequests[0].number,
124+
false
123125
);
124126
});
125127
});

packages/auto-merge/src/AutoMerge.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,9 @@ export class AutoMerge {
140140
const matchingRepositories = this.getMatchingRepositories(allRepositories, regex);
141141

142142
const resultPromises = matchingRepositories.map(async ({pullRequests, repositorySlug}) => {
143-
const actionPromises = pullRequests.map(pullRequest => this.mergePullRequest(repositorySlug, pullRequest.number));
143+
const actionPromises = pullRequests.map(pullRequest =>
144+
this.mergePullRequest(repositorySlug, pullRequest.number, this.config.squash)
145+
);
144146
const actionResults = await Promise.all(actionPromises);
145147
return {actionResults, repositorySlug};
146148
});
@@ -165,7 +167,7 @@ export class AutoMerge {
165167
return actionResult;
166168
}
167169

168-
async mergePullRequest(repositorySlug: string, pullNumber: number, squash?: boolean): Promise<ActionResult> {
170+
async mergePullRequest(repositorySlug: string, pullNumber: number, squash: boolean = false): Promise<ActionResult> {
169171
const actionResult: ActionResult = {pullNumber, status: 'good'};
170172

171173
try {

0 commit comments

Comments
 (0)