fix(worker): kept worktree in a company repo opens a PR, unexpected ADO/git errors never fail a task start
This commit is contained in:
@@ -158,6 +158,22 @@ public sealed class CompanyApproveTests : IDisposable
|
||||
Assert.StartsWith("Resolves [#412](https://ticket.fb-tuning.local/board/project/393/ticket/412)", description);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Approve_KeptWorktree_OpensPrInsteadOfMergingLocally()
|
||||
{
|
||||
if (!GitRepoFixture.IsGitAvailable()) return;
|
||||
await SetUpWorktree();
|
||||
using (var ctx = _db.CreateContext())
|
||||
await new WorktreeRepository(ctx).SetStateAsync("t1", WorktreeState.Kept);
|
||||
var mainBefore = GitRepoFixture.RunGit(_repo.RepoDir, "rev-parse", "main").Trim();
|
||||
|
||||
var r = await Merge(Ado()).ApproveAndMergeAsync("t1", "", default);
|
||||
|
||||
Assert.Equal(TaskMergeService.StatusPrCreated, r.Status);
|
||||
Assert.Equal(mainBefore, GitRepoFixture.RunGit(_repo.RepoDir, "rev-parse", "main").Trim());
|
||||
Assert.Equal(WorktreeState.Active, (await Rows()).Wt.State);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Approve_ReusesActivePr_AsUpdate()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user