git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v6 6/6] fast-import: test the new option command

From
Sverre Rabbelier <srabbelier@gmail.com>
Date
Sep 2, 2009, 17:57 UTC
Message-ID
<1251914223-31435-7-git-send-email-srabbelier@gmail.com>
In-Reply-To
<1251914223-31435-6-git-send-email-srabbelier@gmail.com>

Test three options (quiet and import/export-marks) and verify that the commandline options override these.

Also make sure that a option command without a preceeding feature git-options command is rejected and that non-git options are ignored.

Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com>
---
  Tests updated to match the new 'option git' syntax. Also added a
  test to ensure that an option command without a preceeding 'feature
  git-options' is rejected and that non-git options are ignored.
 t/t9300-fast-import.sh |   84 +++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 83 insertions(+), 1 deletions(-)
diff --git a/t/t9300-fast-import.sh b/t/t9300-fast-import.sh
index 564ed6b..fb795bb 100755
--- a/t/t9300-fast-import.sh
+++ b/t/t9300-fast-import.sh
@@ -1089,7 +1089,7 @@ test_expect_success 'P: fail on blob mark in gitlink' '
     test_must_fail git fast-import <input'
 
 ###
-### series R (feature)
+### series R (feature and option)
 ###
 
 cat >input <<EOF
@@ -1108,4 +1108,86 @@ test_expect_success 'R: supported feature is accepted' '
 	git fast-import <input
 '
 
+cat >input << EOF
+feature git-options
+option git quiet
+blob
+data 3
+hi
+
+EOF
+
+touch empty
+
+test_expect_success 'R: quiet option results in no stats being output' '
+    cat input | git fast-import 2> output &&
+    test_cmp empty output
+'
+
+cat >input << EOF
+feature git-options
+option git export-marks=git.marks
+blob
+mark :1
+data 3
+hi
+
+EOF
+
+test_expect_success \
+    'R: export-marks option results in a marks file being created' \
+    'cat input | git fast-import &&
+    grep :1 git.marks'
+
+test_expect_success \
+    'R: export-marks options can be overriden by commandline options' \
+    'cat input | git fast-import --export-marks=other.marks &&
+    grep :1 other.marks'
+
+cat >input << EOF
+feature git-options
+option git import-marks=marks.out
+option git export-marks=marks.new
+EOF
+
+test_expect_success \
+    'R: import to output marks works without any content' \
+    'cat input | git fast-import &&
+    test_cmp marks.out marks.new'
+
+cat >input <<EOF
+feature git-options
+option git import-marks=nonexistant.marks
+option git export-marks=marks.new
+EOF
+
+test_expect_success \
+    'R: import marks uses the commandline marks file when the stream specifies one' \
+    'cat input | git fast-import --import-marks=marks.out &&
+    test_cmp marks.out marks.new'
+
+cat >input <<EOF
+feature git-options
+EOF
+
+test_expect_success 'R: feature option is accepted' '
+	  git fast-import <input
+'
+
+cat >input <<EOF
+option git quiet
+EOF
+
+test_expect_success \
+    'R: option without preceeding feature command is rejected' \
+    'test_must_fail git fast-import <input'
+
+cat >input <<EOF
+option non-existing-vcs non-existing-option
+EOF
+
+test_expect_success 'R: ignore non-git options' '
+    git fast-import <input
+'
+
 test_done
-- 
1.6.4.16.g72c66.dirty
Previous: Sverre RabbelierNext: Junio C Hamano
Message 7 of 10 in “fast-import: add new feature and mark command”
  1. 0/6 fast-import: add new feature and mark commandSverre Rabbelier, Sep 2, 2009
  2. 1/6 fast-import: put option parsing code in separate functionsSverre Rabbelier, Sep 2, 2009
  3. 2/6 fast-import: put marks reading in it's own functionSverre Rabbelier, Sep 2, 2009
  4. 3/6 fast-import: add feature commandSverre Rabbelier, Sep 2, 2009
  5. 4/6 fast-import: test the new feature commandSverre Rabbelier, Sep 2, 2009
  6. 5/6 fast-import: add option commandSverre Rabbelier, Sep 2, 2009
  7. 6/6 fast-import: test the new option commandSverre Rabbelier, Sep 2, 2009
  8. Junio C HamanoSep 3, 2009
  9. Sverre RabbelierSep 3, 2009
  10. Ian ClatworthySep 4, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.