diff options
author | nulltoken <emeric.fermas@gmail.com> | 2012-11-27 20:24:56 +0100 |
---|---|---|
committer | nulltoken <emeric.fermas@gmail.com> | 2012-11-28 20:04:34 +0100 |
commit | 59a0d772f88258caa59370dc1787622ace17b29a (patch) | |
tree | a6ebd173de64dc7623fcd12dd8f5337ece491f94 /tests-clar/diff/workdir.c | |
parent | 7cdad6c77425348364d9c10582b1b779dd7c1ade (diff) | |
download | libgit2-59a0d772f88258caa59370dc1787622ace17b29a.tar.gz |
diff: enhance test coverage against the workdir
Diffstat (limited to 'tests-clar/diff/workdir.c')
-rw-r--r-- | tests-clar/diff/workdir.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests-clar/diff/workdir.c b/tests-clar/diff/workdir.c index 7636c6e64..57c88c3e5 100644 --- a/tests-clar/diff/workdir.c +++ b/tests-clar/diff/workdir.c @@ -838,3 +838,26 @@ void test_diff_workdir__cannot_diff_against_a_bare_repository(void) git_tree_free(tree); } + +void test_diff_workdir__to_null_tree(void) +{ + git_diff_list *diff; + diff_expects exp; + git_diff_options opts = {0}; + + opts.flags = GIT_DIFF_INCLUDE_UNTRACKED | + GIT_DIFF_RECURSE_UNTRACKED_DIRS; + + g_repo = cl_git_sandbox_init("status"); + + cl_git_pass(git_diff_workdir_to_tree(&diff, g_repo, NULL, &opts)); + + memset(&exp, 0, sizeof(exp)); + + cl_git_pass(git_diff_foreach( + diff, diff_file_cb, diff_hunk_cb, diff_line_cb, &exp)); + + cl_assert_equal_i(exp.files, exp.file_status[GIT_DELTA_UNTRACKED]); + + git_diff_list_free(diff); +} |