1598
ensure_not_expanded stash pop
1599
'
1600
1601
+test_expect_success 'sparse-index is not expanded: stash in-cone pathspec' '
1602
+ init_repos &&
1603
+
1604
+ echo unrelated >>sparse-index/deep/e &&
1605
+ echo literal >>sparse-index/deep/a &&
1606
+ ensure_not_expanded stash push -- deep/a &&
1607
+ test_grep ! literal sparse-index/deep/a &&
1608
+ test_grep unrelated sparse-index/deep/e &&
1609
+ ensure_not_expanded stash pop &&
1610
+ test_grep literal sparse-index/deep/a &&
1611
+
1612
+ echo prefixed >>sparse-index/deep/a &&
1613
+ ensure_not_expanded -C deep stash push -- a &&
1614
+ test_grep ! prefixed sparse-index/deep/a &&
1615
+ test_grep unrelated sparse-index/deep/e &&
1616
+ ensure_not_expanded stash pop &&
1617
+ test_grep prefixed sparse-index/deep/a &&
1618
+
1619
+ echo wildcard >>sparse-index/deep/a &&
1620
+ ensure_not_expanded stash push -- "deep/a*" &&
1621
+ test_grep ! wildcard sparse-index/deep/a &&
1622
+ test_grep unrelated sparse-index/deep/e &&
1623
+ ensure_not_expanded stash pop &&
1624
+ test_grep wildcard sparse-index/deep/a &&
1625
+
1626
+ echo pathspec-file >>sparse-index/deep/a &&
1627
+ echo deep/a >pathspec-file &&
1628
+ ensure_not_expanded stash push --pathspec-from-file=../pathspec-file &&
1629
+ test_grep ! pathspec-file sparse-index/deep/a &&
1630
+ test_grep unrelated sparse-index/deep/e &&
1631
+ ensure_not_expanded stash pop &&
1632
+ test_grep pathspec-file sparse-index/deep/a &&
1633
+
1634
+ echo multiple-a >>sparse-index/deep/a &&
1635
+ echo multiple-e >>sparse-index/deep/e &&
1636
+ ensure_not_expanded stash push -- deep/a deep/e &&
1637
+ test_grep ! multiple-a sparse-index/deep/a &&
1638
+ test_grep ! multiple-e sparse-index/deep/e &&
1639
+ ensure_not_expanded stash pop &&
1640
+ test_grep multiple-a sparse-index/deep/a &&
1641
+ test_grep multiple-e sparse-index/deep/e &&
1642
+
1643
+ echo staged >>sparse-index/deep/a &&
1644
+ git -C sparse-index add deep/a &&
1645
+ ensure_not_expanded stash push --staged -- deep/a &&
1646
+ test_grep ! staged sparse-index/deep/a &&
1647
+ test_grep unrelated sparse-index/deep/e &&
1648
+ ensure_not_expanded stash pop --index &&
1649
+ test_grep staged sparse-index/deep/a &&
1650
+ test_must_fail git -C sparse-index diff --cached --quiet -- deep/a &&
1651
+
1652
+ ensure_not_expanded ! stash push -- deep/does-not-exist &&
1653
+ test_grep "did not match any file" sparse-index-error
1654
+'
1655
+
1656
test_expect_success 'describe tested on all' '
1657
init_repos &&
1658