From 204b68472a4d88460c5564af93be018e91566842 Mon Sep 17 00:00:00 2001 From: Keith Dahlby Date: Thu, 21 Aug 2014 23:17:24 -0500 Subject: [PATCH] Add test for tracking deleted branch --- LibGit2Sharp.Tests/BranchFixture.cs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/LibGit2Sharp.Tests/BranchFixture.cs b/LibGit2Sharp.Tests/BranchFixture.cs index b24cf582a..d954e6a57 100644 --- a/LibGit2Sharp.Tests/BranchFixture.cs +++ b/LibGit2Sharp.Tests/BranchFixture.cs @@ -502,6 +502,28 @@ public void CanGetTrackingInformationFromBranchSharingNoHistoryWithItsTrackedBra } } + [Fact] + public void TrackingInformationIsEmptyForBranchTrackingPrunedRemoteBranch() + { + var path = CloneStandardTestRepo(); + using (var repo = new Repository(path)) + { + const string remoteRef = "refs/remotes/origin/master"; + repo.Refs.Remove(remoteRef); + + Branch master = repo.Branches["master"]; + Assert.True(master.IsTracking); + Assert.NotNull(master.TrackedBranch); + Assert.Equal(remoteRef, master.TrackedBranch.CanonicalName); + Assert.Null(master.TrackedBranch.Tip); + + Assert.NotNull(master.TrackingDetails); + Assert.Null(master.TrackingDetails.AheadBy); + Assert.Null(master.TrackingDetails.BehindBy); + Assert.Null(master.TrackingDetails.CommonAncestor); + } + } + [Fact] public void TrackingInformationIsEmptyForNonTrackingBranch() {