stgit.el: Break out stgit-sort-patches to a separate function for future reuse
[stgit] / t / t2500-clean.sh
... / ...
CommitLineData
1#!/bin/sh
2
3test_description='Run "stg clean"'
4
5. ./test-lib.sh
6
7test_expect_success 'Initialize StGit stack' '
8 stg init &&
9 stg new e0 -m e0 &&
10 stg new p0 -m p0 &&
11 echo foo > foo.txt &&
12 git add foo.txt &&
13 stg refresh &&
14 stg new e1 -m e1 &&
15 stg new e2 -m e2 &&
16 stg pop
17'
18
19test_expect_success 'Clean empty patches' '
20 [ "$(echo $(stg series --applied --noprefix))" = "e0 p0 e1" ] &&
21 [ "$(echo $(stg series --unapplied --noprefix))" = "e2" ] &&
22 stg clean &&
23 [ "$(echo $(stg series --applied --noprefix))" = "p0" ] &&
24 [ "$(echo $(stg series --unapplied --noprefix))" = "" ]
25'
26
27test_expect_success 'Create a conflict' '
28 stg new p1 -m p1 &&
29 echo bar > foo.txt &&
30 stg refresh &&
31 stg pop &&
32 stg new p2 -m p2
33 echo quux > foo.txt &&
34 stg refresh &&
35 conflict_old stg push
36'
37
38test_expect_success 'Make sure conflicting patches are preserved' '
39 stg clean &&
40 [ "$(echo $(stg series --applied --noprefix))" = "p0 p2 p1" ] &&
41 [ "$(echo $(stg series --unapplied --noprefix))" = "" ]
42'
43
44test_done