summaryrefslogtreecommitdiff
path: root/tests/diff/stats.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/diff/stats.c')
-rw-r--r--tests/diff/stats.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/diff/stats.c b/tests/diff/stats.c
index 24316f715..150355686 100644
--- a/tests/diff/stats.c
+++ b/tests/diff/stats.c
@@ -210,6 +210,25 @@ void test_diff_stats__rename_and_modifiy(void)
git_buf_dispose(&buf);
}
+void test_diff_stats__rename_in_subdirectory(void)
+{
+ git_buf buf = GIT_BUF_INIT;
+ const char *stat =
+ " dir/{orig.txt => renamed.txt} | 0\n"
+ " 1 file changed, 0 insertions(+), 0 deletions(-)\n";
+
+ diff_stats_from_commit_oid(
+ &_stats, "0db2a262bc8c5c3cba55254730045a8258da7a37", true);
+
+ cl_assert_equal_sz(1, git_diff_stats_files_changed(_stats));
+ cl_assert_equal_sz(0, git_diff_stats_insertions(_stats));
+ cl_assert_equal_sz(0, git_diff_stats_deletions(_stats));
+
+ cl_git_pass(git_diff_stats_to_buf(&buf, _stats, GIT_DIFF_STATS_FULL, 0));
+ cl_assert_equal_s(stat, git_buf_cstr(&buf));
+ git_buf_dispose(&buf);
+}
+
void test_diff_stats__rename_no_find(void)
{
git_buf buf = GIT_BUF_INIT;