| #include "clar_libgit2.h" |
| #include "buffer.h" |
| #include "refs.h" |
| #include "posix.h" |
| |
| static git_repository *_repo; |
| |
| void test_repo_message__initialize(void) |
| { |
| _repo = cl_git_sandbox_init("testrepo.git"); |
| } |
| |
| void test_repo_message__cleanup(void) |
| { |
| cl_git_sandbox_cleanup(); |
| } |
| |
| void test_repo_message__none(void) |
| { |
| git_buf actual = GIT_BUF_INIT; |
| cl_assert_equal_i(GIT_ENOTFOUND, git_repository_message(&actual, _repo)); |
| } |
| |
| void test_repo_message__message(void) |
| { |
| git_buf path = GIT_BUF_INIT, actual = GIT_BUF_INIT; |
| const char expected[] = "Test\n\nThis is a test of the emergency broadcast system\n"; |
| |
| cl_git_pass(git_buf_joinpath(&path, git_repository_path(_repo), "MERGE_MSG")); |
| cl_git_mkfile(git_buf_cstr(&path), expected); |
| |
| cl_git_pass(git_repository_message(&actual, _repo)); |
| cl_assert_equal_s(expected, git_buf_cstr(&actual)); |
| git_buf_free(&actual); |
| |
| cl_git_pass(p_unlink(git_buf_cstr(&path))); |
| cl_assert_equal_i(GIT_ENOTFOUND, git_repository_message(&actual, _repo)); |
| git_buf_free(&path); |
| } |