[PATCH v7 2/3] rev-parse: add tests for git rev-parse --flags.
Signed-off-by: Jon Seymour <jon.seymour@gmail.com>
---
t/t1510-rev-parse-flags.sh | 174 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 174 insertions(+), 0 deletions(-)
create mode 100755 t/t1510-rev-parse-flags.sh
diff --git a/t/t1510-rev-parse-flags.sh b/t/t1510-rev-parse-flags.sh
new file mode 100755
index 0000000..e327b96
--- /dev/null
+++ b/t/t1510-rev-parse-flags.sh
@@ -0,0 +1,174 @@
+#!/bin/sh
+#
+# Copyright (c) 2010 Jon Seymour
+#
+
+test_description='test git rev-parse --flags'
+. ./test-lib.sh
+
+test_commit "A"
+
+test_expect_success 'git rev-parse --flags -> ""' \
+'
+ >expected &&
+ git rev-parse --flags >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags X -> ""' \
+'
+ >expected &&
+ git rev-parse --flags X >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --no-revs --flags HEAD -> ""' \
+'
+ >expected &&
+ git rev-parse --no-revs --flags HEAD >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags HEAD -> sha1 of HEAD' \
+'
+ git rev-parse HEAD > expected &&
+ git rev-parse --flags HEAD >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags -- -> ""' \
+'
+ >expected &&
+ git rev-parse --flags -- >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags -- X -> ""' \
+'
+ >expected &&
+ git rev-parse --flags -- X >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags -- -X -> ""' \
+'
+ >expected &&
+ git rev-parse --flags -- -X >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags -- -q --> ""' \
+'
+ >expected &&
+ git rev-parse --flags -- -q >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags -X -> "-X"' \
+'
+ printf "%s\n" -X > expected &&
+ git rev-parse --flags -X >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags -X -- Y -Z -> "-X"' \
+'
+ printf "%s\n" -X > expected &&
+ git rev-parse --flags -X -- Y -Z >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --no-flags --flags -X -> ""' \
+'
+ >expected &&
+ git rev-parse --no-flags --flags -X >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --symbolic --no-flags --flags HEAD -> "HEAD"' \
+'
+ echo HEAD >expected &&
+ git rev-parse --symbolic --no-flags --flags HEAD >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags -q -> ""' \
+'
+ >expected &&
+ git rev-parse --flags -q >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags --no-flags -> ""' \
+'
+ >expected &&
+ git rev-parse --flags --no-flags >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --no-revs file -> "file"' \
+'
+ echo foo >file &&
+ echo file >expected &&
+ git rev-parse --no-revs file >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags -X file -> "-X"' \
+'
+ echo foo >file &&
+ printf "%s\n" "-X" >expected &&
+ git rev-parse --flags -X file >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --no-revs -- not-a-file -> "-- not-a-file"' \
+'
+ cat >expected <<-EOF &&
+--
+not-a-file
+ EOF
+ git rev-parse --no-revs -- not-a-file >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags --all -> list of revs' \
+'
+ cat >expected <<-EOF &&
+commit
+ EOF
+ git cat-file -t $(git rev-parse --flags --all | head -1) >actual &&
+ test_cmp expected actual
+'
+
+test_expect_failure 'git rev-parse --no-revs --all -> list of revs' \
+'
+ cat >expected <<-EOF &&
+commit
+ EOF
+ git cat-file -t $(git rev-parse --no-revs --all | head -1) >actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --no-revs --min-age=20100203 -> ""' \
+'
+ >expected &&
+ git rev-parse --no-revs --min-age=20100203 > actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --flags --min-age=20100203 -> "--min-age=20100203" ' \
+'
+ printf "%s\n" "--min-age=20100203" >expected &&
+ git rev-parse --flags --min-age=20100203 > actual &&
+ test_cmp expected actual
+'
+
+test_expect_success 'git rev-parse --no-revs --flags --all -> ""' \
+'
+ >expected &&
+ git rev-parse --no-revs --flags --all >actual &&
+ test_cmp expected actual
+'
+
+test_done
--
1.7.3.3.g9129b6