Commit b426ac90a958176131b9ace6a4676bc3ee1ace4d

Carlos Martín Nieto 2015-08-01T19:52:25

index: test that an unregistered submodule gets staged When we pass the path of a repository to `_bypath()`, we should behave like git and stage it as a `_COMMIT` regardless of whether it is registered a a submodule.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
diff --git a/tests/index/bypath.c b/tests/index/bypath.c
index b587a9c..9706a88 100644
--- a/tests/index/bypath.c
+++ b/tests/index/bypath.c
@@ -34,9 +34,15 @@ void test_index_bypath__add_submodule(void)
 	cl_assert_equal_i(0, status & GIT_SUBMODULE_STATUS_WD_MODIFIED);
 }
 
-void test_index_bypath__add_submodule_old_style(void)
+void test_index_bypath__add_submodule_unregistered(void)
 {
 	const char *sm_name = "not-submodule";
+	const char *sm_head = "68e92c611b80ee1ed8f38314ff9577f0d15b2444";
+	const git_index_entry *entry;
 
 	cl_git_pass(git_index_add_bypath(g_idx, sm_name));
+
+	cl_assert(entry = git_index_get_bypath(g_idx, sm_name, 0));
+	cl_assert_equal_s(sm_head, git_oid_tostr_s(&entry->id));
+	cl_assert_equal_s(sm_name, entry->path);
 }