diff options
| author | nulltoken <emeric.fermas@gmail.com> | 2012-10-19 17:07:39 +0200 |
|---|---|---|
| committer | nulltoken <emeric.fermas@gmail.com> | 2012-10-19 22:01:53 +0200 |
| commit | 8b05bea87042010c2d9c71d0be17f45bf5bea2a3 (patch) | |
| tree | 341b12f077179abef9b38bd70eb8bc4f53b37cbc /tests-clar/repo/head.c | |
| parent | c4f68b3503ea37fc179fccfc49bb17469bd7ff70 (diff) | |
| download | libgit2-8b05bea87042010c2d9c71d0be17f45bf5bea2a3.tar.gz | |
errors: deploy GIT_EORPHANEDHEAD usage
Diffstat (limited to 'tests-clar/repo/head.c')
| -rw-r--r-- | tests-clar/repo/head.c | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/tests-clar/repo/head.c b/tests-clar/repo/head.c index 64dec69dd..4113289f0 100644 --- a/tests-clar/repo/head.c +++ b/tests-clar/repo/head.c @@ -33,18 +33,26 @@ void test_repo_head__head_detached(void) git_reference_free(ref); } +static void make_head_orphaned(void) +{ + git_reference *head; + + cl_git_pass(git_reference_create_symbolic(&head, repo, GIT_HEAD_FILE, "refs/heads/hide/and/seek", 1)); + git_reference_free(head); +} + void test_repo_head__head_orphan(void) { git_reference *ref; cl_assert(git_repository_head_orphan(repo) == 0); - /* orphan HEAD */ - cl_git_pass(git_reference_create_symbolic(&ref, repo, "HEAD", "refs/heads/orphan", 1)); + make_head_orphaned(); + cl_assert(git_repository_head_orphan(repo) == 1); - git_reference_free(ref); - /* take the reop back to it's original state */ + + /* take the repo back to it's original state */ cl_git_pass(git_reference_create_symbolic(&ref, repo, "HEAD", "refs/heads/master", 1)); cl_assert(git_repository_head_orphan(repo) == 0); @@ -59,7 +67,7 @@ void test_repo_head__set_head_Attaches_HEAD_to_un_unborn_branch_when_the_branch_ cl_assert_equal_i(false, git_repository_head_detached(repo)); - cl_assert_equal_i(GIT_ENOTFOUND, git_repository_head(&head, repo)); + cl_assert_equal_i(GIT_EORPHANEDHEAD, git_repository_head(&head, repo)); } void test_repo_head__set_head_Returns_ENOTFOUND_when_the_reference_doesnt_exist(void) @@ -163,3 +171,19 @@ void test_repo_head__detach_head_Fails_if_HEAD_and_point_to_a_non_commitish(void git_reference_free(head); } + +void test_repo_head__detaching_an_orphaned_head_returns_GIT_EORPHANEDHEAD(void) +{ + make_head_orphaned(); + + cl_assert_equal_i(GIT_EORPHANEDHEAD, git_repository_detach_head(repo)); +} + +void test_repo_head__retrieving_an_orphaned_head_returns_GIT_EORPHANEDHEAD(void) +{ + git_reference *head; + + make_head_orphaned(); + + cl_assert_equal_i(GIT_EORPHANEDHEAD, git_repository_head(&head, repo)); +} |
