Add tests for new parameter expansion features

This commit is contained in:
Mahmoud Al-Qudsi 2018-03-11 23:34:58 -05:00
parent 24afff1c77
commit 1e5d7d98a8
3 changed files with 48 additions and 0 deletions

View file

View file

@ -0,0 +1,34 @@
# basic expansion test
echo {}
echo {apple}
echo {apple,orange}
# expansion tests with spaces
echo {apple, orange}
echo { apple, orange, banana }
# expansion with spaces and cartesian products
echo \'{ hello , world }\'
# expansion with escapes
for phrase in {good\,, beautiful ,morning}; echo -n "$phrase "; end | string trim;
for phrase in {goodbye\,,\ cruel\ ,world\n}; echo -n $phrase; end;
# whitespace within entries converted to spaces in a single entry
for foo in { hello
world }
echo \'$foo\'
end
# dual expansion cartesian product
echo { alpha, beta }\ {lambda, gamma }, | sed -r 's/(.*),/\1/'
# expansion with subshells
for name in { (echo Meg), (echo Jo) }
echo $name
end
# subshells with expansion
for name in (for name in {Beth, Amy}; printf "$name\n"; end); printf "$name\n"; end
# vim: set ft=fish:

View file

@ -0,0 +1,14 @@
{}
apple
apple orange
apple orange
apple orange banana
'hello' 'world'
good, beautiful morning
goodbye, cruel world
'hello world'
alpha lambda, beta lambda, alpha gamma, beta gamma
Meg
Jo
Beth
Amy