Skip to content

Commit 0198054

Browse files
authored
feat: Add acceptSourceChanges in request of Merge Branch API (#120)
1 parent 927bd62 commit 0198054

File tree

3 files changed

+27
-17
lines changed

3 files changed

+27
-17
lines changed

crowdin/branches_test.go

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,7 @@ func TestBranchesService_Merge(t *testing.T) {
352352
mux.HandleFunc(fmt.Sprintf("/api/v2/projects/%d/branches/%d/merges", projectID, branchID), func(w http.ResponseWriter, r *http.Request) {
353353
testMethod(t, r, http.MethodPost)
354354
testURL(t, r, fmt.Sprintf("/api/v2/projects/%d/branches/%d/merges", projectID, branchID))
355-
testBody(t, r, `{"sourceBranchId":38,"deleteAfterMerge":false,"dryRun":true}`+"\n")
355+
testBody(t, r, `{"sourceBranchId":38,"deleteAfterMerge":false,"acceptSourceChanges":true,"dryRun":true}`+"\n")
356356

357357
fmt.Fprint(w, `{
358358
"data": {
@@ -361,7 +361,8 @@ func TestBranchesService_Merge(t *testing.T) {
361361
"progress": 100,
362362
"attributes": {
363363
"sourceBranchId": 38,
364-
"deleteAfterMerge": false
364+
"deleteAfterMerge": false,
365+
"acceptSourceChanges": true
365366
},
366367
"createdAt": "2023-09-23T11:26:54+00:00",
367368
"updatedAt": "2023-09-23T11:26:54+00:00",
@@ -372,9 +373,10 @@ func TestBranchesService_Merge(t *testing.T) {
372373
})
373374

374375
req := &model.BranchesMergeRequest{
375-
SourceBranchID: 38,
376-
DeleteAfterMerge: ToPtr(false),
377-
DryRun: ToPtr(true),
376+
SourceBranchID: 38,
377+
DeleteAfterMerge: ToPtr(false),
378+
DryRun: ToPtr(true),
379+
AcceptSourceChanges: ToPtr(true),
378380
}
379381
merge, _, err := client.Branches.Merge(context.Background(), projectID, branchID, req)
380382
if err != nil {
@@ -386,11 +388,13 @@ func TestBranchesService_Merge(t *testing.T) {
386388
Status: "finished",
387389
Progress: 100,
388390
Attributes: struct {
389-
SourceBranchID int `json:"sourceBranchId"`
390-
DeleteAfterMerge bool `json:"deleteAfterMerge"`
391+
SourceBranchID int `json:"sourceBranchId"`
392+
DeleteAfterMerge bool `json:"deleteAfterMerge"`
393+
AcceptSourceChanges bool `json:"acceptSourceChanges,omitempty"`
391394
}{
392-
SourceBranchID: 38,
393-
DeleteAfterMerge: false,
395+
SourceBranchID: 38,
396+
DeleteAfterMerge: false,
397+
AcceptSourceChanges: true,
394398
},
395399
CreatedAt: "2023-09-23T11:26:54+00:00",
396400
UpdatedAt: "2023-09-23T11:26:54+00:00",
@@ -448,7 +452,8 @@ func TestBranchesService_CheckMergeStatus(t *testing.T) {
448452
"progress": 100,
449453
"attributes": {
450454
"sourceBranchId": 38,
451-
"deleteAfterMerge": false
455+
"deleteAfterMerge": false,
456+
"acceptSourceChanges": true
452457
},
453458
"createdAt": "2023-09-23T11:26:54+00:00",
454459
"updatedAt": "2023-09-23T11:26:54+00:00",
@@ -468,11 +473,13 @@ func TestBranchesService_CheckMergeStatus(t *testing.T) {
468473
Status: "finished",
469474
Progress: 100,
470475
Attributes: struct {
471-
SourceBranchID int `json:"sourceBranchId"`
472-
DeleteAfterMerge bool `json:"deleteAfterMerge"`
476+
SourceBranchID int `json:"sourceBranchId"`
477+
DeleteAfterMerge bool `json:"deleteAfterMerge"`
478+
AcceptSourceChanges bool `json:"acceptSourceChanges,omitempty"`
473479
}{
474-
SourceBranchID: 38,
475-
DeleteAfterMerge: false,
480+
SourceBranchID: 38,
481+
DeleteAfterMerge: false,
482+
AcceptSourceChanges: true,
476483
},
477484
CreatedAt: "2023-09-23T11:26:54+00:00",
478485
UpdatedAt: "2023-09-23T11:26:54+00:00",

crowdin/model/branches.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,9 @@ type BranchMerge struct {
9191
Status string `json:"status"`
9292
Progress int `json:"progress"`
9393
Attributes struct {
94-
SourceBranchID int `json:"sourceBranchId"`
95-
DeleteAfterMerge bool `json:"deleteAfterMerge"`
94+
SourceBranchID int `json:"sourceBranchId"`
95+
DeleteAfterMerge bool `json:"deleteAfterMerge"`
96+
AcceptSourceChanges bool `json:"acceptSourceChanges,omitempty"`
9697
} `json:"attributes"`
9798
CreatedAt string `json:"createdAt"`
9899
UpdatedAt string `json:"updatedAt"`
@@ -125,6 +126,8 @@ type BranchesMergeRequest struct {
125126
SourceBranchID int `json:"sourceBranchId"`
126127
// Whether to delete branch after merge. Default: false.
127128
DeleteAfterMerge *bool `json:"deleteAfterMerge,omitempty"`
129+
// Whether to accept source changes. Default: false.
130+
AcceptSourceChanges *bool `json:"acceptSourceChanges,omitempty"`
128131
// Simulate merging without making any real changes. Default: false.
129132
DryRun *bool `json:"dryRun,omitempty"`
130133
}

crowdin/model/branches_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ func TestBranchesMergeRequestValidate(t *testing.T) {
116116
},
117117
{
118118
name: "valid request",
119-
req: &BranchesMergeRequest{SourceBranchID: 1, DeleteAfterMerge: toPtr(true), DryRun: toPtr(false)},
119+
req: &BranchesMergeRequest{SourceBranchID: 1, DeleteAfterMerge: toPtr(true), AcceptSourceChanges: toPtr(false), DryRun: toPtr(false)},
120120
valid: true,
121121
},
122122
}

0 commit comments

Comments
 (0)