i18n: connect: mark die messages for translation
[gitweb.git] / t / t6007-rev-list-cherry-pick-file.sh
index cacf3de6c9f31889fd8df0bc0cebbbc74e3525bd..1408b608eb030f0e6bcc3d531aad426da5f06b12 100755 (executable)
@@ -157,6 +157,33 @@ test_expect_success '--cherry' '
        test_cmp actual.named expect
 '
 
+cat >expect <<EOF
+1      1
+EOF
+
+test_expect_success '--cherry --count' '
+       git rev-list --cherry --count F...E -- bar > actual &&
+       test_cmp actual expect
+'
+
+cat >expect <<EOF
+2      2
+EOF
+
+test_expect_success '--cherry-mark --count' '
+       git rev-list --cherry-mark --count F...E -- bar > actual &&
+       test_cmp actual expect
+'
+
+cat >expect <<EOF
+1      1       2
+EOF
+
+test_expect_success '--cherry-mark --left-right --count' '
+       git rev-list --cherry-mark --left-right --count F...E -- bar > actual &&
+       test_cmp actual expect
+'
+
 test_expect_success '--cherry-pick with independent, but identical branches' '
        git symbolic-ref HEAD refs/heads/independent &&
        rm .git/index &&
@@ -180,4 +207,25 @@ test_expect_success '--count --left-right' '
        test_cmp expect actual
 '
 
+# Corrupt the object store deliberately to make sure
+# the object is not even checked for its existence.
+remove_loose_object () {
+       sha1="$(git rev-parse "$1")" &&
+       remainder=${sha1#??} &&
+       firsttwo=${sha1%$remainder} &&
+       rm .git/objects/$firsttwo/$remainder
+}
+
+test_expect_success '--cherry-pick avoids looking at full diffs' '
+       git checkout -b shy-diff &&
+       test_commit dont-look-at-me &&
+       echo Hello >dont-look-at-me.t &&
+       test_tick &&
+       git commit -m tip dont-look-at-me.t &&
+       git checkout -b mainline HEAD^ &&
+       test_commit to-cherry-pick &&
+       remove_loose_object shy-diff^:dont-look-at-me.t &&
+       git rev-list --cherry-pick ...shy-diff
+'
+
 test_done