Make 'push --undo' safer
[stgit] / t / t1202-push-undo.sh
1 #!/bin/sh
2 #
3 # Copyright (c) 2006 Catalin Marinas
4 #
5
6 test_description='Exercise push --undo with missing files.
7
8 Test the case where a patch fails to be pushed because it modifies a
9 missing file. The "push --undo" command has to be able to revert it.
10 '
11
12 . ./test-lib.sh
13
14 test_expect_success \
15 'Initialize the StGIT repository' \
16 'stg init
17 '
18
19 test_expect_success \
20 'Create the first patch' \
21 '
22 stg new foo -m foo &&
23 echo foo > test &&
24 stg add test &&
25 stg refresh
26 '
27
28 test_expect_success \
29 'Create the second patch' \
30 '
31 stg new bar -m bar &&
32 echo bar > test &&
33 stg add test &&
34 stg refresh
35 '
36
37 test_expect_success \
38 'Pop all patches' \
39 '
40 stg pop --all
41 '
42
43 test_expect_failure \
44 'Push the second patch with conflict' \
45 '
46 stg push bar
47 '
48
49 test_expect_success \
50 'Undo the previous push' \
51 '
52 stg status --reset &&
53 stg push --undo
54 '
55
56 test_done