summaryrefslogtreecommitdiff
path: root/tests-clar/diff/iterator.c
diff options
context:
space:
mode:
authorRussell Belfer <rb@github.com>2013-01-22 15:28:25 -0800
committerRussell Belfer <rb@github.com>2013-01-22 15:28:25 -0800
commitcce548e3e0c14b5d46c8d886c9954f4b66533ecd (patch)
tree34eb15ccbb5b17c316065ad52725b80e09857f1b /tests-clar/diff/iterator.c
parent2a707d0e24e206666626ae858e5ba618ffef0547 (diff)
downloadlibgit2-cce548e3e0c14b5d46c8d886c9954f4b66533ecd.tar.gz
Fix case sensitivity bug with tree iterators
With the new code to make tree iterators support ignore_case, there is a bug in setting the start entry for range bounded iterators where memcmp was being used instead of strncasecmp. This fixes that and expands the tree iterator test to cover the cases that were broken.
Diffstat (limited to 'tests-clar/diff/iterator.c')
-rw-r--r--tests-clar/diff/iterator.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests-clar/diff/iterator.c b/tests-clar/diff/iterator.c
index 566503b6e..efdadbf1f 100644
--- a/tests-clar/diff/iterator.c
+++ b/tests-clar/diff/iterator.c
@@ -843,8 +843,22 @@ void test_diff_iterator__tree_handles_icase_range(void)
check_tree_range(repo, "B", "C", false, 0);
check_tree_range(repo, "B", "C", true, 1);
+ check_tree_range(repo, "b", "c", false, 1);
+ check_tree_range(repo, "b", "c", true, 1);
+
check_tree_range(repo, "a", "z", false, 3);
check_tree_range(repo, "a", "z", true, 4);
+ check_tree_range(repo, "A", "Z", false, 1);
+ check_tree_range(repo, "A", "Z", true, 4);
+ check_tree_range(repo, "a", "Z", false, 0);
+ check_tree_range(repo, "a", "Z", true, 4);
+ check_tree_range(repo, "A", "z", false, 4);
+ check_tree_range(repo, "A", "z", true, 4);
+
+ check_tree_range(repo, "new.txt", "new.txt", true, 1);
+ check_tree_range(repo, "new.txt", "new.txt", false, 1);
+ check_tree_range(repo, "README", "README", true, 1);
+ check_tree_range(repo, "README", "README", false, 1);
}
static void check_index_range(