Added a test case to check what happens when push finds a conflict
authorDavid Kågedal <david@virtutech.com>
Wed, 19 Dec 2007 18:00:11 +0000 (18:00 +0000)
committerCatalin Marinas <catalin.marinas@gmail.com>
Wed, 19 Dec 2007 23:13:30 +0000 (23:13 +0000)
Signed-off-by: David Kågedal <davidk@lysator.liu.se>
Signed-off-by: Karl Hasselström <kha@treskal.com>
t/t1203-push-conflict.sh [new file with mode: 0755]

diff --git a/t/t1203-push-conflict.sh b/t/t1203-push-conflict.sh
new file mode 100755 (executable)
index 0000000..f9537d9
--- /dev/null
@@ -0,0 +1,64 @@
+#!/bin/sh
+#
+# Copyright (c) 2006 David Kågedal
+#
+
+test_description='Exercise push conflicts.
+
+Test that the index has no modifications after a push with conflicts.
+'
+
+. ./test-lib.sh
+
+test_expect_success \
+       'Initialize the StGIT repository' \
+       'stg init
+'
+
+test_expect_success \
+       'Create the first patch' \
+       '
+       stg new foo -m foo &&
+       echo foo > test &&
+       echo fie > test2 &&
+       stg add test test2 &&
+       stg refresh &&
+        stg pop
+       '
+
+test_expect_success \
+       'Create the second patch' \
+       '
+       stg new bar -m bar &&
+       echo bar > test &&
+       stg add test &&
+       stg refresh
+       '
+
+test_expect_success \
+       'Push the first patch with conflict' \
+       '
+       ! stg push foo
+       '
+
+test_expect_success \
+       'Show the, now empty, first patch' \
+       '
+       ! stg show foo | grep -q -e "^diff "
+       '
+
+test_expect_success \
+       'Check that the index has the non-conflict updates' \
+       '
+       git diff --cached --stat | grep -q -e "^ test2 | *1 "
+       '
+
+test_expect_success \
+       'Resolve the conflict' \
+       '
+       echo resolved > test &&
+       git add test &&
+       stg refresh
+       '
+
+test_done