gitignore: Add ChangeLog to .gitignore
[stgit.git] / t / t1501-sink.sh
blob6f225e2cff7c0ed58a2a3412e070c9eee25aa898
1 #!/bin/sh
3 test_description='Test "stg sink"'
5 . ./test-lib.sh
7 test_expect_success 'Initialize StGit stack' '
8 echo 0 >> f0 &&
9 stg add f0 &&
10 git commit -m initial &&
11 echo 1 >> f1 &&
12 stg add f1 &&
13 git commit -m p1 &&
14 echo 2 >> f2 &&
15 stg add f2 &&
16 git commit -m p2 &&
17 echo 3 >> f3 &&
18 stg add f3 &&
19 git commit -m p3 &&
20 echo 4 >> f4 &&
21 stg add f4 &&
22 git commit -m p4 &&
23 echo 22 >> f2 &&
24 stg add f2 &&
25 git commit -m p22 &&
26 stg init &&
27 stg uncommit p22 p4 p3 p2 p1 &&
28 stg pop -a
31 test_expect_success 'sink default without applied patches' '
32 command_error stg sink
35 test_expect_success 'sink and reorder specified without applied patches' '
36 stg sink p2 p1 &&
37 test "$(echo $(stg series --applied --noprefix))" = "p2 p1"
40 test_expect_success 'sink patches to the bottom of the stack' '
41 stg sink p4 p3 p2 &&
42 test "$(echo $(stg series --applied --noprefix))" = "p4 p3 p2 p1"
45 test_expect_success 'sink current below a target' '
46 stg sink --to=p2 &&
47 test "$(echo $(stg series --applied --noprefix))" = "p4 p3 p1 p2"
50 test_expect_success 'bring patches forward' '
51 stg sink --to=p2 p3 p4 &&
52 test "$(echo $(stg series --applied --noprefix))" = "p1 p3 p4 p2"
55 test_expect_success 'sink specified patch below a target' '
56 stg sink --to=p3 p2 &&
57 test "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3 p4"
60 test_expect_success 'sink with conflict' '
61 conflict stg sink --to=p2 p22 &&
62 test "$(echo $(stg series --applied --noprefix))" = "p1 p22" &&
63 test "$(echo $(stg status))" = "DU f2"
66 test_done