Results for alias.test.sh

statusoshosh_.pyosh_.cc
pass 413226
ok 555
FAIL 0915
total464646
caseoshosh_.pyosh_.ccdescription
0pass pass pass Usage of builtins
1pass pass pass Basic alias
2pass pass pass define and use alias on a single line
3pass pass FAIL alias can override builtin
details
4pass pass pass defining multiple aliases, then unalias
5pass pass pass alias not defined
6pass pass pass unalias not defined
7pass pass pass listing given aliases
8pass pass FAIL alias without args lists all aliases
details
9pass pass pass unalias without args is a usage error
10pass pass pass alias with trailing space causes alias expansion on second word
11pass pass pass Recursive alias expansion of first word
12pass pass pass Recursive alias expansion of SECOND word
13pass pass pass Expansion of alias with variable
14pass pass pass Alias must be an unquoted word, no expansions allowed
15pass pass pass first and second word are the same alias, but no trailing space
16pass pass pass first and second word are the same alias, with trailing space
17pass pass pass Invalid syntax of alias
18pass pass pass Dynamic alias definition
19pass pass pass Alias name with punctuation
20pass pass pass Syntax error after expansion
21pass pass pass Loop split across alias and arg works
22ok ok ok Loop split across alias in another way
detailsdetailsdetails
23ok ok ok Loop split across both iterative and recursive aliases
detailsdetailsdetails
24pass pass pass Alias with a quote in the middle is a syntax error
25pass pass pass Alias with internal newlines
26pass pass pass Alias trailing newline
27pass FAIL FAIL Two aliases in pipeline
detailsdetails
28pass pass FAIL Alias not respected inside $()
details
29pass pass pass Alias can be defined and used on a single line
30pass pass pass Alias is respected inside eval
31pass FAIL FAIL alias with redirects works
detailsdetails
32pass FAIL FAIL alias with environment bindings works
detailsdetails
33pass pass pass alias with line continuation in the middle
34ok ok ok alias for left brace
detailsdetailsdetails
35ok ok ok alias for left paren
detailsdetailsdetails
36pass pass FAIL alias used in subshell and command sub
details
37pass pass FAIL alias used in here doc
details
38pass pass FAIL here doc inside alias
details
39pass FAIL FAIL Corner case: alias inside LHS array arithmetic expression
detailsdetails
40pass FAIL FAIL Alias that is pipeline
detailsdetails
41pass FAIL FAIL Alias that is && || ;
detailsdetails
42pass FAIL FAIL Alias and command sub (bug regression)
detailsdetails
43pass FAIL FAIL Alias and arithmetic
detailsdetails
44pass FAIL FAIL Alias and PS4
detailsdetails
45ok ok ok alias with keywords
detailsdetailsdetails
99 passed, 15 OK, 0 not implemented, 0 BUG, 24 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

osh_.cc3 alias can override builtin

[osh_.cc stdout] Expected 'foo bar\n', got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: mycpp/gc_heap.h:226: void gc_heap::Heap::PushRoot(gc_heap::Obj **): Assertion `roots_top_ < kMaxRoots' failed.
osh_.cc8 alias without args lists all aliases

[osh_.cc stdout] Expected "alias ex='exit'\nalias ll='ls -l'\nstatus=0\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh22 Loop split across alias in another way

stdout:
stderr: 
  for i in 1 2 3; do echo $i
                             ^
[ expansion of alias 'e_' ]:1: Expected word type Id.KW_Done, got Id.Eof_Real
osh_.py22 Loop split across alias in another way

stdout:
stderr: 
  for i in 1 2 3; do echo $i
                             ^
[ expansion of alias 'e_' ]:1: Expected word type Id.KW_Done, got Id.Eof_Real
osh_.cc22 Loop split across alias in another way

stdout:
stderr: 
  for i in 1 2 3; do echo $i
                             ^
[ expansion of alias 'e_' ]:1: dynamic_fmt_dummy
osh23 Loop split across both iterative and recursive aliases

stdout:
stderr: 
  for i in $one "2" 3
                      ^
[ expansion of alias 'FOR1' ]:1: Invalid word in for loop
osh_.py23 Loop split across both iterative and recursive aliases

stdout:
stderr: 
  for i in $one "2" 3
                      ^
[ expansion of alias 'FOR1' ]:1: Invalid word in for loop
osh_.cc23 Loop split across both iterative and recursive aliases

stdout:
stderr: 
  for i in $one "2" 3
                      ^
[ expansion of alias 'FOR1' ]:1: Invalid word in for loop
osh_.py27 Two aliases in pipeline

[osh_.py stdout] Expected '3\n', got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
  wc -l
  ^~
[ expansion of alias 'WC' ]:1: 'wc' not found
  seq 3
  ^~~
[ expansion of alias 'SEQ' ]:1: 'seq' not found
osh_.cc27 Two aliases in pipeline

[osh_.cc stdout] Expected '3\n', got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.cc28 Alias not respected inside $()

[osh_.cc status] Expected 127, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.py31 alias with redirects works

[osh_.py stdout] Expected '1\n2\n3\n', got ''
[osh_.py status] Expected 0, got 1

stdout:
stderr: 
  >$TMP/alias1.txt e_ 1
  ^
[ stdin ]:3: Can't open '/alias1.txt': Permission denied
  e_ >$TMP/alias2.txt 2
     ^
[ stdin ]:4: Can't open '/alias2.txt': Permission denied
  e_ 3 >$TMP/alias3.txt
       ^
[ stdin ]:5: Can't open '/alias3.txt': Permission denied
cat: /alias1.txt: No such file or directory
cat: /alias2.txt: No such file or directory
cat: /alias3.txt: No such file or directory
osh_.cc31 alias with redirects works

[osh_.cc stdout] Expected '1\n2\n3\n', got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:143: void posix::dup2(int, int): Assertion `0' failed.
osh_.py32 alias with environment bindings works

[osh_.py stdout] Expected '1\n2\n', got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
  FOO=1 printenv.py FOO
        ^~~~~~~~~~~
[ stdin ]:3: 'printenv.py' not found
  printenv.py FOO
  ^~~~~~~~~~~
[ expansion of alias 'p_' ]:1: 'printenv.py' not found
osh_.cc32 alias with environment bindings works

[osh_.cc stdout] Expected '1\n2\n', got ''
[osh_.cc status] Expected 0, got 127

stdout:
stderr: 
  FOO=1 printenv.py FOO
        ^~~~~~~~~~~
[ stdin ]:3: 'printenv.py' not found
  printenv.py FOO
  ^~~~~~~~~~~
[ expansion of alias 'p_' ]:1: 'printenv.py' not found
osh34 alias for left brace

stdout:
stderr: 
  { echo one
             ^
[ expansion of alias 'LEFT' ]:1: Expected word type Id.Lit_RBrace, got Id.Eof_Real
osh_.py34 alias for left brace

stdout:
stderr: 
  { echo one
             ^
[ expansion of alias 'LEFT' ]:1: Expected word type Id.Lit_RBrace, got Id.Eof_Real
osh_.cc34 alias for left brace

stdout:
stderr: 
  { echo one
             ^
[ expansion of alias 'LEFT' ]:1: dynamic_fmt_dummy
osh35 alias for left paren

stdout:
stderr: 
  ( echo one
             ^
[ expansion of alias 'LEFT' ]:1: Expected word type Id.Right_Subshell, got Id.Eof_Real
osh_.py35 alias for left paren

stdout:
stderr: 
  ( echo one
             ^
[ expansion of alias 'LEFT' ]:1: Expected word type Id.Right_Subshell, got Id.Eof_Real
osh_.cc35 alias for left paren

stdout:
stderr: 
  ( echo one
             ^
[ expansion of alias 'LEFT' ]:1: dynamic_fmt_dummy
osh_.cc36 alias used in subshell and command sub

[osh_.cc stdout] Expected '[ subshell\n[ commandsub\n', got '[ subshell\n'
[osh_.cc status] Expected 0, got -6

stdout:
[ subshell
stderr:
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.cc37 alias used in here doc

[osh_.cc stdout] Expected '[ ]\n', got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.cc38 here doc inside alias

[osh_.cc stdout] Expected 'hi\n', got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.py39 Corner case: alias inside LHS array arithmetic expression

[osh_.py stdout] Expected "['ZERO', 'ONE']\n", got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
  argv.py "${a[@]}"
  ^~~~~~~
[ stdin ]:5: 'argv.py' not found
osh_.cc39 Corner case: alias inside LHS array arithmetic expression

[osh_.cc stdout] Expected "['ZERO', 'ONE']\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.py40 Alias that is pipeline

[osh_.py stdout] Expected '3\n', got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
  echo hi|wc -c
          ^~
[ expansion of alias 't1' ]:1: 'wc' not found
osh_.cc40 Alias that is pipeline

[osh_.cc stdout] Expected '3\n', got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.py41 Alias that is && || ;

[osh_.py stdout] Expected 'one\ntwo\n1\nfour\n', got 'one\ntwo\nfour\n'

stdout:
one
two
four
stderr:
  echo one && echo two && echo 3 | wc -l;
                                   ^~
[ expansion of alias 't1' ]:1: 'wc' not found
osh_.cc41 Alias that is && || ;

[osh_.cc stdout] Expected 'one\ntwo\n1\nfour\n', got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.py42 Alias and command sub (bug regression)

[osh_.py stdout] Expected "['foo', 'bar']\n", got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
  cd $TMP
  ^~
[ stdin ]:1: $HOME isn't defined
  argv.py `cat tmp.txt`
  ^~~~~~~
[ expansion of alias 'a' ]:1: 'argv.py' not found
osh_.cc42 Alias and command sub (bug regression)

[osh_.cc stdout] Expected "['foo', 'bar']\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
  cd $TMP
  ^~
[ stdin ]:1: $HOME isn't defined
osh_eval.dbg: cpp/posix.h:143: void posix::dup2(int, int): Assertion `0' failed.
osh_.py43 Alias and arithmetic

[osh_.py stdout] Expected "['3']\n", got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
  argv.py $((1 + 2))
  ^~~~~~~
[ expansion of alias 'a' ]:1: 'argv.py' not found
osh_.cc43 Alias and arithmetic

[osh_.cc stdout] Expected "['3']\n", got ''
[osh_.cc status] Expected 0, got 127

stdout:
stderr: 
  argv.py $((1 + 2))
  ^~~~~~~
[ expansion of alias 'a' ]:1: 'argv.py' not found
osh_.py44 Alias and PS4

[osh_.py stdout] Expected "['foo', 'bar']\n", got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
+trace PS4='+$(echo trace) '
+trace shopt -s expand_aliases
+trace alias 'a=argv.py'
+trace argv.py foo bar
  argv.py foo bar
  ^~~~~~~
[ expansion of alias 'a' ]:1: 'argv.py' not found
osh_.cc44 Alias and PS4

[osh_.cc stdout] Expected "['foo', 'bar']\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.dbg: cpp/posix.h:106: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh45 alias with keywords

stdout:
stderr: 
  
   ^
[ expansion of alias 'a' ]:1: Unexpected EOF while parsing command
osh_.py45 alias with keywords

stdout:
stderr: 
  
   ^
[ expansion of alias 'a' ]:1: Unexpected EOF while parsing command
osh_.cc45 alias with keywords

stdout:
stderr: 
   
   ^
[ expansion of alias 'a' ]:1: Unexpected EOF while parsing command