summaryrefslogtreecommitdiff
path: root/tests/status/submodules.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/status/submodules.c')
-rw-r--r--tests/status/submodules.c37
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);
+}
+