diff options
Diffstat (limited to 'tests/status/submodules.c')
-rw-r--r-- | tests/status/submodules.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/status/submodules.c b/tests/status/submodules.c index e6de60088..33c9e5ab4 100644 --- a/tests/status/submodules.c +++ b/tests/status/submodules.c @@ -524,3 +524,40 @@ void test_status_submodules__entry_but_dir_tracked(void) git_tree_free(tree); git_repository_free(repo); } + +void test_status_submodules__mixed_case(void) +{ + git_status_list *status; + git_status_options status_opts = GIT_STATUS_OPTIONS_INIT; + const git_status_entry *s; + size_t i; + + status_opts.flags = + GIT_STATUS_OPT_INCLUDE_UNTRACKED | + GIT_STATUS_OPT_INCLUDE_IGNORED | + GIT_STATUS_OPT_INCLUDE_UNMODIFIED | + GIT_STATUS_OPT_RECURSE_UNTRACKED_DIRS | + GIT_STATUS_OPT_RECURSE_IGNORED_DIRS | + GIT_STATUS_OPT_RENAMES_HEAD_TO_INDEX | + GIT_STATUS_OPT_RENAMES_INDEX_TO_WORKDIR | + GIT_STATUS_OPT_RENAMES_FROM_REWRITES | + GIT_STATUS_OPT_INCLUDE_UNREADABLE | + GIT_STATUS_OPT_INCLUDE_UNREADABLE_AS_UNTRACKED; + + g_repo = setup_fixture_submod3(); + + cl_git_pass(git_status_list_new(&status, g_repo, &status_opts)); + + for (i = 0; i < git_status_list_entrycount(status); i++) { + s = git_status_byindex(status, i); + + if (s->head_to_index && + strcmp(s->head_to_index->old_file.path, ".gitmodules") == 0) + continue; + + cl_assert_equal_i(0, s->status); + } + + git_status_list_free(status); +} + |