fish-shell/tests/indent.in
ridiculousfish 98d736f916 Teach fish_indent about escaped newlines
Correctly indents code like:

   alpha | \
     # comment
     beta
2018-05-07 21:40:53 -07:00

125 lines
1.6 KiB
Fish

echo Test1
echo -n '
begin
echo hi
end | cat | cat | begin ; echo hi ; end | begin ; begin ; echo hi ; end ; end arg
' | ../test/root/bin/fish_indent
echo \nTest2
echo -n '
switch aloha
case alpha
echo sup
case beta gamma
echo hi
end
' | ../test/root/bin/fish_indent
echo \nTest3
echo -n '
function hello_world
'begin'
echo hi
end | cat
echo sup; echo sup
echo hello;
echo hello
end
' | ../test/root/bin/fish_indent
echo \nTest4
echo -n '
echo alpha #comment1
#comment2
#comment3
for i in abc #comment1
#comment2
echo hi
end
switch foo #abc
# bar
case bar
echo baz\
qqq
case "*"
echo sup
end' | ../test/root/bin/fish_indent
echo \nTest5
echo -n '
if true
else if false
echo alpha
switch beta
case gamma
echo delta
end
end
' | ../test/root/bin/fish_indent -i
echo \nTest6
# Test errors
echo -n '
begin
echo hi
else
echo bye
end; echo alpha "
' | ../test/root/bin/fish_indent
echo \nTest7
# issue 1665
echo -n '
if begin ; false; end; echo hi ; end
while begin ; false; end; echo hi ; end
' | ../test/root/bin/fish_indent
echo \nTest redir formatting
# issue 2899
echo -n '
echo < stdin >>appended yes 2>&1 no > stdout maybe 2>& 4 | cat 2>| cat
' | ../test/root/bin/fish_indent
echo \nTest normalization of keywords
# issue 2921
echo -n '
i\
f true
echo yes
en\
d
"whil\
e" true
"builtin" yes
en"d"
alpha | \
beta
gamma | \
# comment3
delta
if true
echo abc
end
if false # comment4
and true && false
echo abc;end
echo hi |
echo bye
' | ../test/root/bin/fish_indent