3 test_description
='"stg refresh" with removed files'
7 # Ignore our own temp files.
8 cat >> .git
/info
/exclude
<<EOF
14 test_expect_success
'Initialize StGit stack' '
18 stg add x.txt y.txt &&
19 git commit -m "Add some files"
22 cat > expected0.txt
<<EOF
25 printf '' > expected1.txt
26 cat > expected2.txt
<<EOF
29 test_expect_success
'stg rm a file' '
30 test_when_finished "stg pop -a; git reset --hard"
33 stg status > status0.txt &&
34 test_cmp expected0.txt status0.txt &&
36 stg status > status1.txt &&
37 test_cmp expected1.txt status1.txt &&
38 stg files > files.txt &&
39 test_cmp expected2.txt files.txt
42 cat > expected0.txt
<<EOF
46 printf '' > expected1.txt
47 cat > expected2.txt
<<EOF
51 test_expect_success
'stg rm a file together with other changes' '
52 test_when_finished "stg pop -a; git reset --hard"
56 stg status > status0.txt &&
57 test_cmp expected0.txt status0.txt &&
58 stg refresh --force &&
59 stg status > status1.txt &&
60 test_cmp expected1.txt status1.txt &&
61 stg files > files.txt &&
62 test_cmp expected2.txt files.txt
65 cat > expected0.txt
<<EOF
68 printf '' > expected1.txt
69 cat > expected2.txt
<<EOF
72 test_expect_success
'rm a file' '
73 test_when_finished "stg pop -a; git reset --hard"
76 stg status > status0.txt &&
77 test_cmp expected0.txt status0.txt &&
79 stg status > status1.txt &&
80 test_cmp expected1.txt status1.txt &&
81 stg files > files.txt &&
82 test_cmp expected2.txt files.txt
85 cat > expected0.txt
<<EOF
89 printf '' > expected1.txt
90 cat > expected2.txt
<<EOF
94 test_expect_success
'rm a file together with other changes' '
95 test_when_finished "stg pop -a; git reset --hard"
99 stg status > status0.txt &&
100 test_cmp expected0.txt status0.txt &&
102 stg status > status1.txt &&
103 test_cmp expected1.txt status1.txt &&
104 stg files > files.txt &&
105 test_cmp expected2.txt files.txt