chiark / gitweb /
Check for disappeared newborn files in git.tree_status (bug #8516)
[stgit] / t / t1202-push-undo.sh
CommitLineData
a57bd720
CM
1#!/bin/sh
2#
3# Copyright (c) 2006 Catalin Marinas
4#
5
6test_description='Exercise push --undo with missing files.
7
8Test the case where a patch fails to be pushed because it modifies a
9missing file. The "push --undo" command has to be able to revert it.
10'
11
12. ./test-lib.sh
13
14test_expect_success \
15 'Initialize the StGIT repository' \
16 'stg init
17'
18
19test_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
28test_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
37test_expect_success \
38 'Pop all patches' \
39 '
40 stg pop --all
41 '
42
5f594e90 43test_expect_success \
a57bd720
CM
44 'Push the second patch with conflict' \
45 '
5f594e90 46 ! stg push bar
a57bd720
CM
47 '
48
49test_expect_success \
50 'Undo the previous push' \
51 '
52 stg push --undo
53 '
54
cb688601
CM
55test_expect_success \
56 'Check the push after undo fails as well' \
57 '
58 ! stg push bar
59 '
60
ca66756b
CM
61test_expect_success \
62 'Undo with disappeared newborn' \
63 '
64 touch newfile &&
65 stg add newfile &&
66 rm newfile &&
67 stg push --undo
68 '
69
a57bd720 70test_done