stg add x.txt foo/y.txt &&
stg refresh
done &&
- [ "$(echo $(stg applied))" = "p0 p1 p2" ] &&
- [ "$(echo $(stg unapplied))" = "" ]
+ [ "$(echo $(stg series --applied --noprefix))" = "p0 p1 p2" ] &&
+ [ "$(echo $(stg series --unapplied --noprefix))" = "" ]
'
test_expect_success 'Fast-forward push from a subdir' '
[ "$(echo $(cat foo/y.txt))" = "y0 y1 y2" ]
'
-test_expect_failure 'Modifying push from a subdir' '
+test_expect_success 'Modifying push from a subdir' '
stg pop &&
[ "$(echo $(cat x.txt))" = "x0 x1" ] &&
[ "$(echo $(cat foo/y.txt))" = "y0 y1" ] &&
[ "$(echo $(cat foo/y.txt))" = "y0 y1 y2" ]
'
-test_expect_failure 'Conflicting push from subdir' '
+test_expect_success 'Conflicting push from subdir' '
stg pop p1 p2 &&
[ "$(echo $(cat x.txt))" = "x0" ] &&
[ "$(echo $(cat foo/y.txt))" = "y0" ] &&
cd foo &&
- ! stg push p2 &&
+ conflict stg push p2 &&
cd .. &&
[ "$(echo $(stg status --conflict))" = "foo/y.txt x.txt" ]
'
+test_expect_success 'Conflicting add/unknown file in subdir' '
+ stg status --reset &&
+ stg new foo -m foo &&
+ mkdir d &&
+ echo foo > d/test &&
+ stg add d/test &&
+ stg refresh &&
+ stg pop &&
+ mkdir -p d &&
+ echo bar > d/test &&
+ command_error stg push foo &&
+ [ $(stg top) != "foo" ]
+'
+
test_done