Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/libgit2sharp.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJameson Miller <jamill@microsoft.com>2012-11-05 21:04:29 +0400
committernulltoken <emeric.fermas@gmail.com>2012-11-09 01:50:00 +0400
commita66d8ff7c0820aaacac63a5b2761facd7df7fee3 (patch)
treed15cc94462c78ca4f443f38bd03f0d84aafd7748 /LibGit2Sharp.Tests/BranchFixture.cs
parentc05fc29aee3180aa3723f195c5c7e9a1f5f13037 (diff)
Checkout is not allowed in a bare repository
Diffstat (limited to 'LibGit2Sharp.Tests/BranchFixture.cs')
-rw-r--r--LibGit2Sharp.Tests/BranchFixture.cs46
1 files changed, 28 insertions, 18 deletions
diff --git a/LibGit2Sharp.Tests/BranchFixture.cs b/LibGit2Sharp.Tests/BranchFixture.cs
index 3f5321ef..19601d39 100644
--- a/LibGit2Sharp.Tests/BranchFixture.cs
+++ b/LibGit2Sharp.Tests/BranchFixture.cs
@@ -421,17 +421,17 @@ namespace LibGit2Sharp.Tests
}
[Theory]
- [InlineData("test")]
- [InlineData("refs/heads/test")]
- public void CanCheckoutAnExistingBranch(string name)
+ [InlineData("i-do-numbers")]
+ [InlineData("diff-test-cases")]
+ public void CanCheckoutAnExistingBranch(string branchName)
{
- TemporaryCloneOfTestRepo path = BuildTemporaryCloneOfTestRepo();
+ TemporaryCloneOfTestRepo path = BuildTemporaryCloneOfTestRepo(StandardTestRepoWorkingDirPath);
using (var repo = new Repository(path.RepositoryPath))
{
Branch master = repo.Branches["master"];
Assert.True(master.IsCurrentRepositoryHead);
- Branch branch = repo.Branches[name];
+ Branch branch = repo.Branches[branchName];
Assert.NotNull(branch);
Branch test = repo.Checkout(branch);
@@ -446,17 +446,17 @@ namespace LibGit2Sharp.Tests
}
[Theory]
- [InlineData("test")]
- [InlineData("refs/heads/test")]
- public void CanCheckoutAnExistingBranchByName(string name)
+ [InlineData("i-do-numbers")]
+ [InlineData("diff-test-cases")]
+ public void CanCheckoutAnExistingBranchByName(string branchName)
{
- TemporaryCloneOfTestRepo path = BuildTemporaryCloneOfTestRepo();
+ TemporaryCloneOfTestRepo path = BuildTemporaryCloneOfTestRepo(StandardTestRepoWorkingDirPath);
using (var repo = new Repository(path.RepositoryPath))
{
Branch master = repo.Branches["master"];
Assert.True(master.IsCurrentRepositoryHead);
- Branch test = repo.Checkout(name);
+ Branch test = repo.Checkout(branchName);
Assert.False(repo.Info.IsHeadDetached);
Assert.False(test.IsRemote);
@@ -472,7 +472,7 @@ namespace LibGit2Sharp.Tests
[InlineData("refs/tags/lw")]
public void CanCheckoutAnArbitraryCommit(string commitPointer)
{
- TemporaryCloneOfTestRepo path = BuildTemporaryCloneOfTestRepo();
+ TemporaryCloneOfTestRepo path = BuildTemporaryCloneOfTestRepo(StandardTestRepoWorkingDirPath);
using (var repo = new Repository(path.RepositoryPath))
{
Branch master = repo.Branches["master"];
@@ -480,26 +480,36 @@ namespace LibGit2Sharp.Tests
Branch detachedHead = repo.Checkout(commitPointer);
+ Assert.Equal(repo.Head, detachedHead);
+ Assert.Equal(repo.Lookup(commitPointer).Sha, detachedHead.Tip.Sha);
+ Assert.True(repo.Head.IsCurrentRepositoryHead);
Assert.True(repo.Info.IsHeadDetached);
+ Assert.True(detachedHead.IsCurrentRepositoryHead);
Assert.False(detachedHead.IsRemote);
Assert.Equal(detachedHead.Name, detachedHead.CanonicalName);
- Assert.Equal("(no branch)", detachedHead.CanonicalName);
- Assert.Equal(repo.Lookup(commitPointer).Sha, detachedHead.Tip.Sha);
- Assert.Equal(repo.Head, detachedHead);
+ Assert.Equal("(no branch)", detachedHead.CanonicalName);
Assert.False(master.IsCurrentRepositoryHead);
- Assert.True(detachedHead.IsCurrentRepositoryHead);
- Assert.True(repo.Head.IsCurrentRepositoryHead);
}
}
[Fact]
- public void CheckingOutANonExistingBranchThrows()
+ public void CheckingOutInABareRepoThrows()
{
using (var repo = new Repository(BareTestRepoPath))
{
+ Assert.Throws<InvalidOperationException>(() => repo.Checkout(repo.Branches["refs/heads/test"]));
+ Assert.Throws<InvalidOperationException>(() => repo.Checkout("refs/heads/test"));
+ }
+ }
+
+ [Fact]
+ public void CheckingOutANonExistingBranchThrows()
+ {
+ using (var repo = new Repository(StandardTestRepoWorkingDirPath))
+ {
Assert.Throws<LibGit2SharpException>(() => repo.Checkout("i-do-not-exist"));
}
}
@@ -507,7 +517,7 @@ namespace LibGit2Sharp.Tests
[Fact]
public void CheckingOutABranchWithBadParamsThrows()
{
- using (var repo = new Repository(BareTestRepoPath))
+ using (var repo = new Repository(StandardTestRepoWorkingDirPath))
{
Assert.Throws<ArgumentException>(() => repo.Checkout(string.Empty));
Assert.Throws<ArgumentNullException>(() => repo.Checkout(default(Branch)));