3166 lines
130 KiB
Text
3166 lines
130 KiB
Text
[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[1;33m~[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[1;33m~[0m[31m[1;33m~[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[1;33m~[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;160mx[0m[31m[38;5;160mx[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[1;33m~[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[1;33m~[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[1;33m~[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m[31m[38;5;34m.[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m21sh/redirections/outputs/truncating/multiple/004-together[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m A right redirection can be associated to the twice outputs by using `&>...`, that means `redirect stdout and stderr to ...`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "new_file_stderr_and_stdout"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout_and_stderr TOKEN201703291601_1 TOKEN201703291601_2 &>new_file_stderr_and_stdout[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `TOKEN201703291601_1`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601_2`[0m
|
||
[38;5;239m 01: TOKEN201703291601_1[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601_1`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `TOKEN201703291601_2`[0m
|
||
[38;5;239m 01: TOKEN201703291601_2[0m
|
||
|
||
MISC:
|
||
[31m[38;5;160m FAILURE expected_to create_file `new_file_stderr_and_stdout` matching_regex `TOKEN201703291601_1$`[0m
|
||
[31m[38;5;160m FAILURE expected_to create_file `new_file_stderr_and_stdout` matching_regex `TOKEN201703291601_2$`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m21sh/redirections/outputs/truncating/multiple/005-together-with-whitespaces[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m A right redirection can be associated to the twice outputs by using `&>...`, that means `redirect stdout and stderr to ...`.
|
||
In this test, we specify the file name in a separate field.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f new_file_stderr_and_stdout[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout_and_stderr TOKEN201703291601_1 TOKEN201703291601_2 &> new_file_stderr_and_stdout[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `TOKEN201703291601_1`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601_2`[0m
|
||
[38;5;239m 01: TOKEN201703291601_1[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601_1`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `TOKEN201703291601_2`[0m
|
||
[38;5;239m 01: TOKEN201703291601_2[0m
|
||
|
||
MISC:
|
||
[31m[38;5;160m FAILURE expected_to create_file `new_file_stderr_and_stdout` matching_regex `TOKEN201703291601_1$`[0m
|
||
[31m[38;5;160m FAILURE expected_to create_file `new_file_stderr_and_stdout` matching_regex `TOKEN201703291601_2$`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m21sh/separators/semicolon/003-parse-error-empty-inline-command[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using the simicolon separator `;` with empty commands results in error.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout TOKEN201703291601 ; ; ./exit_with_status 42[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not be_empty[0m
|
||
[31m[38;5;34m SUCCESS might match_regex `([Ss]yntax|[Pp]arse) error`[0m
|
||
[38;5;239m 01: syntax error near unexpected token `;'[0m
|
||
|
||
MISC:
|
||
[31m[38;5;34m SUCCESS expected_to_not exit_with_status `42`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/builtins/export/004-export-empty-variable-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that exporting an empty variable does not add it to the environment.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: unset "TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: export TOKEN201703291601
|
||
02: ./display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `TOKEN201703291601`[0m
|
||
[38;5;239m 01: ------------------------------
|
||
02: TERM_PROGRAM=iTerm.app
|
||
03: TERM=screen-256color
|
||
04: SHELL=/bin/zsh
|
||
05: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
06: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
07: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
08: TERM_PROGRAM_VERSION=3.0.10
|
||
09: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
10: ZSH=/Users/ariard/.oh-my-zsh
|
||
11: USER=ariard
|
||
12: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
13: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
14: PAGER=less
|
||
15: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
16: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
17: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
18: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
19: MAIL=ariard@student.42.fr
|
||
20: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
21: LANG=en_US.UTF-8
|
||
22: ITERM_PROFILE=Default
|
||
23: XPC_FLAGS=0x0
|
||
24: TMUX_PANE=%19
|
||
25: XPC_SERVICE_NAME=0
|
||
26: SHLVL=5
|
||
27: HOME=/Users/ariard
|
||
28: COLORFGBG=7;0
|
||
29: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
30: LOGNAME=ariard
|
||
31: LESS=-R
|
||
32: LC_CTYPE=en_US.UTF-8
|
||
33: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
34: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
35: _=../../42sh
|
||
36: ?=0
|
||
37: TOKEN201703291601=
|
||
38: ------------------------------
|
||
39: TOTAL ENVIRONMENT VARIABLES: 36[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/builtins/export/options/002-export-p-param-and-token-should-add-local-var-only-part1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check if export with -p option + token , add the variable into export list but not in env list. And don't display the export variable on stdout.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "./stored_env"
|
||
02: unset "TOKEN201703291601_NAME"
|
||
03: export | awk 'BEGIN {FS="="} $0 !~ /^(OLDPWD|_)/ {print $1"="}' > "./stored_env"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: export -p TOKEN201703291601_NAME
|
||
02: export[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to_not match_each_regex_of_file `./stored_env`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `TOKEN201703291601_NAME`[0m
|
||
[38;5;239m 01: export TERM_PROGRAM=iTerm.app
|
||
02: export TERM=screen-256color
|
||
03: export SHELL=/bin/zsh
|
||
04: export HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
05: export TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
06: export Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
07: export TERM_PROGRAM_VERSION=3.0.10
|
||
08: export TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
09: export ZSH=/Users/ariard/.oh-my-zsh
|
||
10: export USER=ariard
|
||
11: export SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
12: export __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
13: export PAGER=less
|
||
14: export TMUX=/private/tmp/tmux-18965/default,460,2
|
||
15: export HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
16: export LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
17: export PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
18: export MAIL=ariard@student.42.fr
|
||
19: export PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
20: export LANG=en_US.UTF-8
|
||
21: export ITERM_PROFILE=Default
|
||
22: export XPC_FLAGS=0x0
|
||
23: export TMUX_PANE=%19
|
||
24: export XPC_SERVICE_NAME=0
|
||
25: export SHLVL=5
|
||
26: export HOME=/Users/ariard
|
||
27: export COLORFGBG=7;0
|
||
28: export ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
29: export LOGNAME=ariard
|
||
30: export LESS=-R
|
||
31: export LC_CTYPE=en_US.UTF-8
|
||
32: export TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
33: export OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
34: export _=../../42sh
|
||
35: export ?=0
|
||
36: export TERM_PROGRAM=iTerm.app
|
||
37: export TERM=screen-256color
|
||
38: export SHELL=/bin/zsh
|
||
39: export HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
40: export TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
41: export Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
42: export TERM_PROGRAM_VERSION=3.0.10
|
||
43: export TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
44: export ZSH=/Users/ariard/.oh-my-zsh
|
||
45: export USER=ariard
|
||
46: export SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
47: export __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
48: export PAGER=less
|
||
49: export TMUX=/private/tmp/tmux-18965/default,460,2
|
||
50: export HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
51: export LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
52: export PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
53: export MAIL=ariard@student.42.fr
|
||
54: export PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
55: export LANG=en_US.UTF-8
|
||
56: export ITERM_PROFILE=Default
|
||
57: export XPC_FLAGS=0x0
|
||
58: export TMUX_PANE=%19
|
||
59: export XPC_SERVICE_NAME=0
|
||
60: export SHLVL=5
|
||
61: export HOME=/Users/ariard
|
||
62: export COLORFGBG=7;0
|
||
63: export ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
64: export LOGNAME=ariard
|
||
65: export LESS=-R
|
||
66: export LC_CTYPE=en_US.UTF-8
|
||
67: export TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
68: export OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
69: export _=../../42sh
|
||
70: export ?=0[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/builtins/export/options/003-export-p-param-and-token-should-add-local-var-only-part2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the builtin `export` with option `-p` results in an added variable into the export list but not from the environment.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "./stored_env"
|
||
02: unset "TOKEN201703291601_NAME"
|
||
03: export | awk 'BEGIN {FS="="} $0 !~ /^(OLDPWD|_)/ {print $1"="}' > "./stored_env"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: export -p TOKEN201703291601_NAME
|
||
02: ./display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to_not match_each_regex_of_file `./stored_env`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601_NAME`[0m
|
||
[38;5;239m 01: export TERM_PROGRAM=iTerm.app
|
||
02: export TERM=screen-256color
|
||
03: export SHELL=/bin/zsh
|
||
04: export HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
05: export TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
06: export Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
07: export TERM_PROGRAM_VERSION=3.0.10
|
||
08: export TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
09: export ZSH=/Users/ariard/.oh-my-zsh
|
||
10: export USER=ariard
|
||
11: export SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
12: export __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
13: export PAGER=less
|
||
14: export TMUX=/private/tmp/tmux-18965/default,460,2
|
||
15: export HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
16: export LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
17: export PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
18: export MAIL=ariard@student.42.fr
|
||
19: export PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
20: export LANG=en_US.UTF-8
|
||
21: export ITERM_PROFILE=Default
|
||
22: export XPC_FLAGS=0x0
|
||
23: export TMUX_PANE=%19
|
||
24: export XPC_SERVICE_NAME=0
|
||
25: export SHLVL=5
|
||
26: export HOME=/Users/ariard
|
||
27: export COLORFGBG=7;0
|
||
28: export ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
29: export LOGNAME=ariard
|
||
30: export LESS=-R
|
||
31: export LC_CTYPE=en_US.UTF-8
|
||
32: export TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
33: export OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
34: export _=../../42sh
|
||
35: export ?=0
|
||
36: ------------------------------
|
||
37: TERM_PROGRAM=iTerm.app
|
||
38: TERM=screen-256color
|
||
39: SHELL=/bin/zsh
|
||
40: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
41: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
42: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
43: TERM_PROGRAM_VERSION=3.0.10
|
||
44: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
45: ZSH=/Users/ariard/.oh-my-zsh
|
||
46: USER=ariard
|
||
47: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
48: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
49: PAGER=less
|
||
50: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
51: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
52: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
53: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
54: MAIL=ariard@student.42.fr
|
||
55: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
56: LANG=en_US.UTF-8
|
||
57: ITERM_PROFILE=Default
|
||
58: XPC_FLAGS=0x0
|
||
59: TMUX_PANE=%19
|
||
60: XPC_SERVICE_NAME=0
|
||
61: SHLVL=5
|
||
62: HOME=/Users/ariard
|
||
63: COLORFGBG=7;0
|
||
64: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
65: LOGNAME=ariard
|
||
66: LESS=-R
|
||
67: LC_CTYPE=en_US.UTF-8
|
||
68: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
69: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
70: _=../../42sh
|
||
71: ?=0
|
||
72: ------------------------------
|
||
73: TOTAL ENVIRONMENT VARIABLES: 35[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/builtins/export/options/004-export-n-param[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using the builtin `export` with option `-n` results in a removed environment variable.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export TOKEN201703291601_NAME=TOKEN201703291601_VALUE[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: export -n TOKEN201703291601_NAME
|
||
02: export
|
||
03: ./display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `TOKEN201703291601_NAME`[0m
|
||
[38;5;239m 01: export TERM_PROGRAM=iTerm.app
|
||
02: export TERM=screen-256color
|
||
03: export SHELL=/bin/zsh
|
||
04: export HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
05: export TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
06: export Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
07: export TERM_PROGRAM_VERSION=3.0.10
|
||
08: export OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
09: export TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
10: export ZSH=/Users/ariard/.oh-my-zsh
|
||
11: export USER=ariard
|
||
12: export SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
13: export __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
14: export PAGER=less
|
||
15: export TMUX=/private/tmp/tmux-18965/default,460,2
|
||
16: export HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
17: export LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
18: export TOKEN201703291601_NAME=TOKEN201703291601_VALUE
|
||
19: export PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
20: export MAIL=ariard@student.42.fr
|
||
21: export PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
22: export LANG=en_US.UTF-8
|
||
23: export ITERM_PROFILE=Default
|
||
24: export XPC_FLAGS=0x0
|
||
25: export TMUX_PANE=%19
|
||
26: export XPC_SERVICE_NAME=0
|
||
27: export SHLVL=5
|
||
28: export HOME=/Users/ariard
|
||
29: export COLORFGBG=7;0
|
||
30: export ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
31: export LOGNAME=ariard
|
||
32: export LESS=-R
|
||
33: export LC_CTYPE=en_US.UTF-8
|
||
34: export TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
35: export _=../../42sh
|
||
36: export ?=1
|
||
37: ------------------------------
|
||
38: TERM_PROGRAM=iTerm.app
|
||
39: TERM=screen-256color
|
||
40: SHELL=/bin/zsh
|
||
41: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
42: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
43: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
44: TERM_PROGRAM_VERSION=3.0.10
|
||
45: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
46: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
47: ZSH=/Users/ariard/.oh-my-zsh
|
||
48: USER=ariard
|
||
49: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
50: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
51: PAGER=less
|
||
52: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
53: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
54: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
55: TOKEN201703291601_NAME=TOKEN201703291601_VALUE
|
||
56: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
57: MAIL=ariard@student.42.fr
|
||
58: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
59: LANG=en_US.UTF-8
|
||
60: ITERM_PROFILE=Default
|
||
61: XPC_FLAGS=0x0
|
||
62: TMUX_PANE=%19
|
||
63: XPC_SERVICE_NAME=0
|
||
64: SHLVL=5
|
||
65: HOME=/Users/ariard
|
||
66: COLORFGBG=7;0
|
||
67: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
68: LOGNAME=ariard
|
||
69: LESS=-R
|
||
70: LC_CTYPE=en_US.UTF-8
|
||
71: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
72: _=../../42sh
|
||
73: ?=0
|
||
74: ------------------------------
|
||
75: TOTAL ENVIRONMENT VARIABLES: 36[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: export: invalid option -n
|
||
02: ../../42sh: usage: export [name[=value] ...] or export -p[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/escaping/mixed/globbing/brace-expansion/002-it-expands-braces-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using multiple escape characters `\\` results in a good behavior with the brace expansion.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout \\{1..2}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^\1@\2@$`[0m
|
||
[38;5;239m 01: \{1..2}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/escaping/mixed/globbing/brace-expansion/003-it-expands-braces-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using multiple escape characters `\\` results in a good behavior with the brace expansion.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout \\\{1..2} \\\\{1..2} \\\\\{1..2} \\\\\\{1..2}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^\[{]1..2}@\\1@\\2@\\[{]1..2}@\\\1@\\\2@$`[0m
|
||
[38;5;239m 01: \{1..2}@\\{1..2}@\\{1..2}@\\\{1..2}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/escaping/mixed/globbing/bracket-expansion/001-it-does-not-expand-brackets[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that escaping brackets does not result in an expansion process.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' 'c'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout \[abc] [abc\] \[abc\][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^[[]abc]@[[]abc]@[[]abc]@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/escaping/mixed/globbing/bracket-expansion/002-escaped-inversion-mark[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with an inversion mark `!` or `^` as pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' 'c' 'd' 'e' 'f' '!' '^'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [\!abc]
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [\^abc][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `!@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[\^]@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `b@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `c@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `d@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `e@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `f@`[0m
|
||
[31m[1;33m WARNING might match_regex `^!@a@b@c@$`[0m
|
||
[31m[1;33m WARNING might match_regex `^[\^]@a@b@c@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/escaping/mixed/globbing/bracket-expansion/003-it-takes-escaped-bracket-as-pattern-character[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that a closing bracket ']' may be escaped in a backet expansion pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' 'c' 'd' 'e' 'f' ']'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [abc\]def]
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [abc\\\]def]
|
||
03: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [abc\\\\\]def]
|
||
04: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [abc\\\\\\\]def][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@` 4 times[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `b@` 4 times[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `c@` 4 times[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `]@` 4 times[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `d@` 4 times[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `e@` 4 times[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `f@` 4 times[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `def`[0m
|
||
[31m[1;33m WARNING might match_regex `^]@a@b@c@d@e@f@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/001-simple-ascending-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with an ASCII range in ascending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {a..e}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^a@b@c@d@e@$`[0m
|
||
[38;5;239m 01: {a..e}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/002-simple-ascending-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with an ASCII range in ascending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{a..e}TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601aTOKEN201703291601@TOKEN201703291601bTOKEN201703291601@TOKEN201703291601cTOKEN201703291601@TOKEN201703291601dTOKEN201703291601@TOKEN201703291601eTOKEN201703291601@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{a..e}TOKEN201703291601@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/003-simple-ascending-3[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with an ASCII range in ascending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {A..E}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^A@B@C@D@E@$`[0m
|
||
[38;5;239m 01: {A..E}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/004-simple-descending-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with an ASCII range in descending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {E..A}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^E@D@C@B@A@$`[0m
|
||
[38;5;239m 01: {E..A}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/005-simple-descending-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with an ASCII range in descending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{E..A}TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601ETOKEN201703291601@TOKEN201703291601DTOKEN201703291601@TOKEN201703291601CTOKEN201703291601@TOKEN201703291601BTOKEN201703291601@TOKEN201703291601ATOKEN201703291601@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{E..A}TOKEN201703291601@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/006-simple-descending-3[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with an ASCII range in descending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{e..a}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601e@TOKEN201703291601d@TOKEN201703291601c@TOKEN201703291601b@TOKEN201703291601a@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{e..a}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/007-identical-start-and-end[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a range of single ASCII value.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {f..f}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^f@$`[0m
|
||
[38;5;239m 01: {f..f}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/008-multiple-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that brace expansion may be performed with multiple brace patterns.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {a..b}{c..d}{e..f}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^ace@acf@ade@adf@bce@bcf@bde@bdf@$`[0m
|
||
[38;5;239m 01: {a..b}{c..d}{e..f}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/009-multiple-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that brace expansion may be performed with multiple brace patterns.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{a..b}abc{Z..X}def{s..s}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601aabcZdefs@TOKEN201703291601aabcYdefs@TOKEN201703291601aabcXdefs@TOKEN201703291601babcZdefs@TOKEN201703291601babcYdefs@TOKEN201703291601babcXdefs@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{a..b}abc{Z..X}def{s..s}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/ascii-range/010-big-range[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that brace expansion may be performed with a big numeric range.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {A..z}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@.+@.?@.+@.+@_@.+@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@$`[0m
|
||
[38;5;239m 01: {A..z}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/001-simple-ascending-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in ascending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {1..5}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^1@2@3@4@5@$`[0m
|
||
[38;5;239m 01: {1..5}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/002-simple-ascending-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in ascending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{1..5}TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN2017032916011TOKEN201703291601@TOKEN2017032916012TOKEN201703291601@TOKEN2017032916013TOKEN201703291601@TOKEN2017032916014TOKEN201703291601@TOKEN2017032916015TOKEN201703291601@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{1..5}TOKEN201703291601@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/003-simple-ascending-3[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in ascending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{1..+5}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN2017032916011@TOKEN2017032916012@TOKEN2017032916013@TOKEN2017032916014@TOKEN2017032916015@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{1..+5}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/004-simple-ascending-4[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in ascending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {-5..0}TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^-5TOKEN201703291601@-4TOKEN201703291601@-3TOKEN201703291601@-2TOKEN201703291601@-1TOKEN201703291601@0TOKEN201703291601@$`[0m
|
||
[38;5;239m 01: {-5..0}TOKEN201703291601@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/005-simple-ascending-5[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in ascending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {-100..-98}TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^-100TOKEN201703291601@-99TOKEN201703291601@-98TOKEN201703291601@$`[0m
|
||
[38;5;239m 01: {-100..-98}TOKEN201703291601@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/006-simple-descending-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in descending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {5..1}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^5@4@3@2@1@$`[0m
|
||
[38;5;239m 01: {5..1}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/007-simple-descending-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in descending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{5..1}TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN2017032916015TOKEN201703291601@TOKEN2017032916014TOKEN201703291601@TOKEN2017032916013TOKEN201703291601@TOKEN2017032916012TOKEN201703291601@TOKEN2017032916011TOKEN201703291601@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{5..1}TOKEN201703291601@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/008-simple-descending-3[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in descending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{5..+1}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN2017032916015@TOKEN2017032916014@TOKEN2017032916013@TOKEN2017032916012@TOKEN2017032916011@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{5..+1}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/009-simple-descending-4[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in descending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {0..-5}TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^0TOKEN201703291601@-1TOKEN201703291601@-2TOKEN201703291601@-3TOKEN201703291601@-4TOKEN201703291601@-5TOKEN201703291601@$`[0m
|
||
[38;5;239m 01: {0..-5}TOKEN201703291601@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/010-simple-descending-5[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a numeric range in descending order.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {-98..-100}TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^-98TOKEN201703291601@-99TOKEN201703291601@-100TOKEN201703291601@$`[0m
|
||
[38;5;239m 01: {-98..-100}TOKEN201703291601@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/011-identical-positive-start-and-end[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a range of single value.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {42..42}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^42@$`[0m
|
||
[38;5;239m 01: {42..42}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/012-identical-negative-start-and-end[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brace expansion does work with a range of single value.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {-42..-42}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^-42@$`[0m
|
||
[38;5;239m 01: {-42..-42}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/013-multiple-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that brace expansion may be performed with multiple brace patterns.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {1..2}{3..4}{5..6}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^135@136@145@146@235@236@245@246@$`[0m
|
||
[38;5;239m 01: {1..2}{3..4}{5..6}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/014-multiple-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that brace expansion may be performed with multiple brace patterns.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout TOKEN201703291601{1..2}abc{-50..-53}def{0..0}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN2017032916011abc-50def0@TOKEN2017032916011abc-51def0@TOKEN2017032916011abc-52def0@TOKEN2017032916011abc-53def0@TOKEN2017032916012abc-50def0@TOKEN2017032916012abc-51def0@TOKEN2017032916012abc-52def0@TOKEN2017032916012abc-53def0@$`[0m
|
||
[38;5;239m 01: TOKEN201703291601{1..2}abc{-50..-53}def{0..0}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/brace-expansion/numeric-range/015-big-range[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that brace expansion may be performed with a big numeric range.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {-100..100}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^-100@-99@-98@-97@-96@-95@-94@-93@-92@-91@-90@-89@-88@-87@-86@-85@-84@-83@-82@-81@-80@-79@-78@-77@-76@-75@-74@-73@-72@-71@-70@-69@-68@-67@-66@-65@-64@-63@-62@-61@-60@-59@-58@-57@-56@-55@-54@-53@-52@-51@-50@-49@-48@-47@-46@-45@-44@-43@-42@-41@-40@-39@-38@-37@-36@-35@-34@-33@-32@-31@-30@-29@-28@-27@-26@-25@-24@-23@-22@-21@-20@-19@-18@-17@-16@-15@-14@-13@-12@-11@-10@-9@-8@-7@-6@-5@-4@-3@-2@-1@0@1@2@3@4@5@6@7@8@9@10@11@12@13@14@15@16@17@18@19@20@21@22@23@24@25@26@27@28@29@30@31@32@33@34@35@36@37@38@39@40@41@42@43@44@45@46@47@48@49@50@51@52@53@54@55@56@57@58@59@60@61@62@63@64@65@66@67@68@69@70@71@72@73@74@75@76@77@78@79@80@81@82@83@84@85@86@87@88@89@90@91@92@93@94@95@96@97@98@99@100@$`[0m
|
||
[38;5;239m 01: {-100..100}@[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/multi/001-range-and-char[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that brackets expansion works with a range and 2 characters as pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch '1' '2' '3' 'a' 'b' 'z' 'C' '-' '[a-z-2]' 'a-z-2'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [a-z-2][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `-@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `2@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `b@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `z@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `1@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `3@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `C@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]a-z-2]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a-z-2@`[0m
|
||
[31m[1;33m WARNING might match_regex `^-@2@a@b@z@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/multi/002-reverse-range-and-chars[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that brackets expansion works with 2 patterns.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a4' 'a3' 'a2' 'a42' 'a[42]' 'z4' 'z3' 'z2' 'z42' 'z[42]' '42'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [!a-y][42]
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [^a-y][42][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `42@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `z4@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `z2@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `z3@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `z42@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `z[[]42]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a3@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a42@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a[[]42]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^42@z2@z4@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/multi/003-reverse-multi-hard[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check how the value inside multiple brackets are parsed with bracket as pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch '][' 'a[' '1['[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [!]az][[]
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [^]az][[][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `1[[]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `][[]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a[[]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^1[[]@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/multi/004-simple-bracket+char+range[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to control if 2 patterns splited by a minus characters can be match.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a-0' 'a-1' 'a-2' 'b-0' 'b-1' 'b-2' 'Z-0' 'Z-1' 'Z-2' 'a1' 'Z9' 'D4'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [aZ]-[1-9][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a-1@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a-2@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `Z-1@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `Z-2@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a-0@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `b-0@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `b-1@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `b-2@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a1@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `Z9@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `D4@`[0m
|
||
[31m[1;33m WARNING might match_regex `^Z-1@Z-2@a-1@a-2@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/not/001-simple-opposit-match[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with the inversion mark `!` or `^`. The expected behavior is the reversion of the following pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' '1' 'Z' 'd' 'e' 'f' 'def'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [!a1Z]
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [^a1Z][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `d@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `e@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `f@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `def@`[0m
|
||
[31m[1;33m WARNING might match_regex `^d@e@f@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/not/002-simple-opposite-range[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with the inversion mark `!` or `^`. The expected behavior is the reversion of the following pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' 'c' 'z' '1' '2' '3' '42'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [!a-z]
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [^a-z][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `1@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `2@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `3@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `42@`[0m
|
||
[31m[1;33m WARNING might match_regex `^1@2@3@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/range-pattern/001-alpha-range[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with the following pattern `[a-z]`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'f' 'z' 'A' '1' '[a-z]'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [a-z][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `f@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `z@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `A@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `1@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]a-z]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^a@f@z@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/range-pattern/002-numeric-range[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with the following pattern `[0-9]`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch '4' '2' '1' '9' 'a' 'C' '[0-9]'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [0-9][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `1@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `2@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `4@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `9@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `C@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]0-9]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^1@2@4@9@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/range-pattern/003-ascii-range-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check if the bracket expansion works with the following pattern []-z].
|
||
One test use the following range which is the default range for bash:
|
||
< > , ; : ! ' " ( ) [ ] { } @ $ \ # % 1 2 3 4 5 6 7 8 9 a A b B c C d D e E f F g G h H i I j J k K l L m M n N o O p P q Q r R s S t T u U v V w W x X y Y z
|
||
The other use the ascii value, which does make more sense.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch '2' 'a' 'B' 'c' 'Z' '[' ']' '[]-z]'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout []-z][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `c@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `2@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `B@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `Z@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]]-z]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^]@a@c@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/range-pattern/004-ascii-range-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with the following pattern `[1-z]`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch '2' 'a' 'B' 'c' 'Z' ']' '[' '[1-z]' '1-z' '-'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [1-z][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `2@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `B@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `c@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `Z@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `]@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[[]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `-@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `1-z@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]1-z]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^2@B@Z@[[]@]@a@c@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/simple-pattern/001-simple-list[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with a simple list of characters as pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' 'c' 'd' 'e' 'f' '[bca]'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [bca][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `b@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `c@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `d@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `e@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `f@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]bca]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^a@b@c@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/simple-pattern/002-multi-bracket[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with multiple brackets patterns.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch "TOKEN201703291601abcd" "TOKEN201703291601abc" "TOKEN201703291601abdc" "TOKEN201703291601b" "TOKEN201703291601" "TOKEN201703291601\[a]b\[c]\[d]"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout TOKEN201703291601[a]b[c][d][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601abcd@$`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601abc@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601abdc@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601b@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601[[]a]b[[]c][[]d]@`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/simple-pattern/003-brackets-as-pattern[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with an opening bracket `[` and a closing bracket `]` as pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch '[' ']' 'a' 'Z' '[][]'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [][][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[[]@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `a@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `Z@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]][[]]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^[[]@]@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/simple-pattern/004-multi-bracket-multi-char[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to match a file name which contain a bracket as first character.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 21 23 24 25 26 27 28 29 ']' '[' '[12][34]' '1234'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [12][34][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `13@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `14@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `23@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `24@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `0[0-9]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `1[0-2]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `1[5-9]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `2[0-2]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `2[5-9]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]12][[]34]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `1234@`[0m
|
||
[31m[1;33m WARNING might match_regex `^13@14@23@24@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/single-char-pattern/001-single-char[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with a single character as pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' '[a]'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [a][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `b@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]a]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^a@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/single-char-pattern/002-closing-bracket-char[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with a closing bracket `]` as pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch ']' '[]]'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout []][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]]]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^]@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/globbing/bracket-expansion/single-char-pattern/003-opening-bracket-char[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the brackets expansion works with an opening bracket `[` as pattern.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch '[' '[[]'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [[][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[[]@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[][[]]@`[0m
|
||
[31m[1;33m WARNING might match_regex `^[[]@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/local-variable/002-declare-and-expand-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that an empty variable is not expanded as an empty string and results in any new argument in the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601_NAME=
|
||
02: ./write_on_stdout_and_stderr $TOKEN201703291601_NAME $TOKEN201703291601_NAME[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `write on stdout`[0m
|
||
[38;5;239m 01: [0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `write on stderr`[0m
|
||
[38;5;239m 01: [0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/local-variable/003-unknown-variable-does-not-result-in-new-argument[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that an unknown variable is not expanded as an empty string and results in any new argument in the command line.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: unset "TOKEN201703291601_UNKNOWN"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout $TOKEN201703291601_UNKNOWN TOKEN201703291601_DISPLAYED[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `TOKEN201703291601_DISPLAYED`[0m
|
||
[38;5;239m 01: write on stdout[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/local-variable/004-existing-variable-in-environment-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is initialize a local variable named as an environment variable and check if it's update the existing environment variable.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export "TOKEN201703291601_NAME=TOKEN201703291601_VALUE_OLD"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601_NAME=TOKEN201703291601_VALUE_NEW
|
||
02: ./display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_NAME=TOKEN201703291601_VALUE_NEW$`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `^TOKEN201703291601_NAME=TOKEN201703291601_VALUE_OLD$`[0m
|
||
[38;5;239m 01: ------------------------------
|
||
02: TERM_PROGRAM=iTerm.app
|
||
03: TERM=screen-256color
|
||
04: SHELL=/bin/zsh
|
||
05: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
06: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
07: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
08: TERM_PROGRAM_VERSION=3.0.10
|
||
09: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
10: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
11: ZSH=/Users/ariard/.oh-my-zsh
|
||
12: USER=ariard
|
||
13: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
14: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
15: PAGER=less
|
||
16: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
17: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
18: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
19: TOKEN201703291601_NAME=TOKEN201703291601_VALUE_OLD
|
||
20: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
21: MAIL=ariard@student.42.fr
|
||
22: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
23: LANG=en_US.UTF-8
|
||
24: ITERM_PROFILE=Default
|
||
25: XPC_FLAGS=0x0
|
||
26: TMUX_PANE=%19
|
||
27: XPC_SERVICE_NAME=0
|
||
28: SHLVL=5
|
||
29: HOME=/Users/ariard
|
||
30: COLORFGBG=7;0
|
||
31: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
32: LOGNAME=ariard
|
||
33: LESS=-R
|
||
34: LC_CTYPE=en_US.UTF-8
|
||
35: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
36: _=../../42sh
|
||
37: ?=0
|
||
38: ------------------------------
|
||
39: TOTAL ENVIRONMENT VARIABLES: 36[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/local-variable/005-existing-variable-in-environment-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is initialize a local variable named as an environment variable and check if it's update the existing environment variable.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export "TOKEN201703291601_NAME=TOKEN201703291601_VALUE"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601_NAME=
|
||
02: ./display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_NAME=$`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `^TOKEN201703291601_NAME=TOKEN201703291601_VALUE$`[0m
|
||
[38;5;239m 01: ------------------------------
|
||
02: TERM_PROGRAM=iTerm.app
|
||
03: TERM=screen-256color
|
||
04: SHELL=/bin/zsh
|
||
05: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
06: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
07: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
08: TERM_PROGRAM_VERSION=3.0.10
|
||
09: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
10: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
11: ZSH=/Users/ariard/.oh-my-zsh
|
||
12: USER=ariard
|
||
13: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
14: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
15: PAGER=less
|
||
16: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
17: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
18: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
19: TOKEN201703291601_NAME=TOKEN201703291601_VALUE
|
||
20: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
21: MAIL=ariard@student.42.fr
|
||
22: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
23: LANG=en_US.UTF-8
|
||
24: ITERM_PROFILE=Default
|
||
25: XPC_FLAGS=0x0
|
||
26: TMUX_PANE=%19
|
||
27: XPC_SERVICE_NAME=0
|
||
28: SHLVL=5
|
||
29: HOME=/Users/ariard
|
||
30: COLORFGBG=7;0
|
||
31: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
32: LOGNAME=ariard
|
||
33: LESS=-R
|
||
34: LC_CTYPE=en_US.UTF-8
|
||
35: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
36: _=../../42sh
|
||
37: ?=0
|
||
38: ------------------------------
|
||
39: TOTAL ENVIRONMENT VARIABLES: 36[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/local-variable/mixed/inline-environment-variable/001-local-variable-shouldnt-be-set[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that declaring a variable and specifying a binary does not result in local variable declaration but a modified environment for the command.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601_NAME=TOKEN201703291601_VALUE ./display_env
|
||
02: ./write_on_stderr $TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_NAME=TOKEN201703291601_VALUE$`[0m
|
||
[38;5;239m 01: ------------------------------
|
||
02: TERM_PROGRAM=iTerm.app
|
||
03: TERM=screen-256color
|
||
04: SHELL=/bin/zsh
|
||
05: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
06: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
07: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
08: TERM_PROGRAM_VERSION=3.0.10
|
||
09: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
10: ZSH=/Users/ariard/.oh-my-zsh
|
||
11: USER=ariard
|
||
12: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
13: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
14: PAGER=less
|
||
15: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
16: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
17: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
18: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
19: MAIL=ariard@student.42.fr
|
||
20: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
21: LANG=en_US.UTF-8
|
||
22: ITERM_PROFILE=Default
|
||
23: XPC_FLAGS=0x0
|
||
24: TMUX_PANE=%19
|
||
25: XPC_SERVICE_NAME=0
|
||
26: SHLVL=5
|
||
27: HOME=/Users/ariard
|
||
28: COLORFGBG=7;0
|
||
29: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
30: LOGNAME=ariard
|
||
31: LESS=-R
|
||
32: LC_CTYPE=en_US.UTF-8
|
||
33: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
34: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
35: _=../../42sh
|
||
36: ?=0
|
||
37: ------------------------------
|
||
38: TOTAL ENVIRONMENT VARIABLES: 35[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `TOKEN201703291601_VALUE`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `write on stderr`[0m
|
||
[38;5;239m 01: [0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/local-variable/mixed/redirections/001-truncating[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that a redirection can be set with a local variable as file name.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "TOKEN201703291601_FILENAME"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601_NAME=TOKEN201703291601_FILENAME
|
||
02: ./write_on_stdout TOKEN201703291601_VALUE > $TOKEN201703291601_NAME[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
MISC:
|
||
[31m[38;5;160m FAILURE expected_to create_file `TOKEN201703291601_FILENAME` matching_regex `^TOKEN201703291601_VALUE$`[0m
|
||
[31m[38;5;34m SUCCESS expected_to exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/local-variable/mixed/redirections/002-appending[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that a redirection can be set with a local variable as file name.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "TOKEN201703291601_FILENAME"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601_NAME=TOKEN201703291601_FILENAME
|
||
02: ./write_on_stdout TOKEN201703291601_VALUE1 >> $TOKEN201703291601_NAME
|
||
03: ./write_on_stdout TOKEN201703291601_VALUE2 >> $TOKEN201703291601_NAME[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
MISC:
|
||
[31m[38;5;160m FAILURE expected_to create_file `TOKEN201703291601_FILENAME` matching_regex `^TOKEN201703291601_VALUE1$`[0m
|
||
[31m[38;5;160m FAILURE expected_to create_file `TOKEN201703291601_FILENAME` matching_regex `^TOKEN201703291601_VALUE2$`[0m
|
||
[31m[38;5;34m SUCCESS expected_to exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/local-variable/mixed/tilde-expansion/001-process-tilde-expansion[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the tilde expansion `~` in variable declaration.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601=~
|
||
02: ./write_on_stdout TILDE:$TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `TILDE:~`[0m
|
||
[31m[1;33m WARNING might match_regex `TILDE:/TOKEN201703291601`[0m
|
||
[38;5;239m 01: TILDE:~[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/double-quotes/mixed/escaping/004-it-results-in-error[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using backslash `\\` before the closing double-quote `"` does result in syntax error.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout "TOKEN201703291601\"[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `^TOKEN201703291601$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to_not be_empty[0m
|
||
[31m[1;33m WARNING might match_regex `([Ss]yntax|[Pp]arse) error`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/double-quotes/mixed/globbing/brace-expansion/002-it-does-not-expand-braces-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {1..2}"{1..2}"[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `1[{]1..2}@2[{]1..2}@`[0m
|
||
[38;5;239m 01: {1..2}{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/double-quotes/mixed/globbing/brace-expansion/003-it-does-not-expand-braces-3[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout "{1..2}"{1..2}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[{]1..2}1@[{]1..2}2@`[0m
|
||
[38;5;239m 01: {1..2}{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/double-quotes/mixed/globbing/brace-expansion/004-it-does-not-expand-braces-4[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout "{1..2}"{1..2}"{1..2}"{1..2}"{1..2}"{1..2}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[{]1..2}1[{]1..2}1[{]1..2}1@[{]1..2}1[{]1..2}1[{]1..2}2@[{]1..2}1[{]1..2}2[{]1..2}1@[{]1..2}1[{]1..2}2[{]1..2}2@[{]1..2}2[{]1..2}1[{]1..2}1@[{]1..2}2[{]1..2}1[{]1..2}2@[{]1..2}2[{]1..2}2[{]1..2}1@[{]1..2}2[{]1..2}2[{]1..2}2@`[0m
|
||
[38;5;239m 01: {1..2}{1..2}{1..2}{1..2}{1..2}{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/double-quotes/mixed/globbing/brace-expansion/005-it-does-not-expand-braces-5[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout "{1..2}" {1..2} "{1..2}" "{1..2}"[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[{]1..2}@1@2@[{]1..2}@[{]1..2}@`[0m
|
||
[38;5;239m 01: {1..2}@{1..2}@{1..2}@{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/double-quotes/mixed/globbing/bracket-expansion/001-it-works-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that an argument made with quoted and unquoted parts results in bracket pattern expansion.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout ["a"][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]a]@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^a@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/double-quotes/mixed/globbing/bracket-expansion/002-it-works-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that an argument made with quoted and unquoted parts results in bracket pattern expansion.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout ["a"bc"def"gh][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `b@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `c@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `d@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `e@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `f@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `g@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `h@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `bc`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `def`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `gh`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/mixed/globbing/brace-expansion/001-it-does-not-expand-braces-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout "{1..2}"{1..2}'{1..2}'{1..2}"{1..2}"{1..2}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[{]1..2}1[{]1..2}1[{]1..2}1@[{]1..2}1[{]1..2}1[{]1..2}2@[{]1..2}1[{]1..2}2[{]1..2}1@[{]1..2}1[{]1..2}2[{]1..2}2@[{]1..2}2[{]1..2}1[{]1..2}1@[{]1..2}2[{]1..2}1[{]1..2}2@[{]1..2}2[{]1..2}2[{]1..2}1@[{]1..2}2[{]1..2}2[{]1..2}2@`[0m
|
||
[38;5;239m 01: {1..2}{1..2}{1..2}{1..2}{1..2}{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/mixed/globbing/bracket-expansion/001-it-works-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that an argument made with quoted and unquoted parts results in bracket pattern expansion.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout [""'a'""][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]a]@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^a@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/mixed/globbing/bracket-expansion/002-it-works-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that an argument made with quoted and unquoted parts results in bracket pattern expansion.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout ["a"bc'def'gh][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `b@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `c@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `d@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `e@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `f@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `g@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `h@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `bc`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `def`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `gh`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/simple-quotes/mixed/globbing/brace-expansion/002-it-does-not-expand-braces-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout {1..2}'{1..2}'[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `1[{]1..2}@2[{]1..2}@`[0m
|
||
[38;5;239m 01: {1..2}{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/simple-quotes/mixed/globbing/brace-expansion/003-it-does-not-expand-braces-3[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout '{1..2}'{1..2}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[{]1..2}1@[{]1..2}2@`[0m
|
||
[38;5;239m 01: {1..2}{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/simple-quotes/mixed/globbing/brace-expansion/004-it-does-not-expand-braces-4[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout '{1..2}'{1..2}'{1..2}'{1..2}'{1..2}'{1..2}[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[{]1..2}1[{]1..2}1[{]1..2}1@[{]1..2}1[{]1..2}1[{]1..2}2@[{]1..2}1[{]1..2}2[{]1..2}1@[{]1..2}1[{]1..2}2[{]1..2}2@[{]1..2}2[{]1..2}1[{]1..2}1@[{]1..2}2[{]1..2}1[{]1..2}2@[{]1..2}2[{]1..2}2[{]1..2}1@[{]1..2}2[{]1..2}2[{]1..2}2@`[0m
|
||
[38;5;239m 01: {1..2}{1..2}{1..2}{1..2}{1..2}{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/simple-quotes/mixed/globbing/brace-expansion/005-it-does-not-expand-braces-5[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that braces expansion is not processed within quoted part of the command line.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_all_arguments_on_stdout '{1..2}' {1..2} '{1..2}' '{1..2}'[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `[{]1..2}@1@2@[{]1..2}@[{]1..2}@`[0m
|
||
[38;5;239m 01: {1..2}@{1..2}@{1..2}@{1..2}@[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/simple-quotes/mixed/globbing/bracket-expansion/001-it-works-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that an argument made with quoted and unquoted parts results in bracket pattern expansion.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout ['a'][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `[[]a]@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^a@$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/quoting/simple-quotes/mixed/globbing/bracket-expansion/002-it-works-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that an argument made with quoted and unquoted parts results in bracket pattern expansion.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./test_globbing"
|
||
02: mkdir "./test_globbing"
|
||
03: cd "./test_globbing"
|
||
04: touch 'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h'[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_all_arguments_on_stdout ['a'bc'def'gh][0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `a@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `b@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `c@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `d@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `e@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `f@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `g@`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `h@`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `bc`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `def`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `gh`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/subshell/mixed/inline-environment-variable/001-modifies-the-child-environment-only-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that declaring a variable and specifying a binary in a subshell does not result in local variable declaration or a modified parent shell's environment, but only a modified child's environment.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: (TOKEN201703291601_NAME=TOKEN201703291601_VALUE ./display_env)
|
||
02: ./display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_NAME=TOKEN201703291601_VALUE$` once[0m
|
||
[38;5;239m 01: ------------------------------
|
||
02: TERM_PROGRAM=iTerm.app
|
||
03: TERM=screen-256color
|
||
04: SHELL=/bin/zsh
|
||
05: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
06: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
07: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
08: TERM_PROGRAM_VERSION=3.0.10
|
||
09: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
10: ZSH=/Users/ariard/.oh-my-zsh
|
||
11: USER=ariard
|
||
12: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
13: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
14: PAGER=less
|
||
15: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
16: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
17: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
18: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
19: MAIL=ariard@student.42.fr
|
||
20: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
21: LANG=en_US.UTF-8
|
||
22: ITERM_PROFILE=Default
|
||
23: XPC_FLAGS=0x0
|
||
24: TMUX_PANE=%19
|
||
25: XPC_SERVICE_NAME=0
|
||
26: SHLVL=5
|
||
27: HOME=/Users/ariard
|
||
28: COLORFGBG=7;0
|
||
29: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
30: LOGNAME=ariard
|
||
31: LESS=-R
|
||
32: LC_CTYPE=en_US.UTF-8
|
||
33: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
34: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
35: _=../../42sh
|
||
36: ?=0
|
||
37: ------------------------------
|
||
38: TOTAL ENVIRONMENT VARIABLES: 35
|
||
39: ------------------------------
|
||
40: TERM_PROGRAM=iTerm.app
|
||
41: TERM=screen-256color
|
||
42: SHELL=/bin/zsh
|
||
43: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
44: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
45: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
46: TERM_PROGRAM_VERSION=3.0.10
|
||
47: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
48: ZSH=/Users/ariard/.oh-my-zsh
|
||
49: USER=ariard
|
||
50: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
51: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
52: PAGER=less
|
||
53: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
54: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
55: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
56: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
57: MAIL=ariard@student.42.fr
|
||
58: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
59: LANG=en_US.UTF-8
|
||
60: ITERM_PROFILE=Default
|
||
61: XPC_FLAGS=0x0
|
||
62: TMUX_PANE=%19
|
||
63: XPC_SERVICE_NAME=0
|
||
64: SHLVL=5
|
||
65: HOME=/Users/ariard
|
||
66: COLORFGBG=7;0
|
||
67: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
68: LOGNAME=ariard
|
||
69: LESS=-R
|
||
70: LC_CTYPE=en_US.UTF-8
|
||
71: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
72: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
73: _=../../42sh
|
||
74: ?=0
|
||
75: ------------------------------
|
||
76: TOTAL ENVIRONMENT VARIABLES: 35[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1m42sh/subshell/mixed/inline-environment-variable/002-modifies-the-child-environment-only-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that declaring a variable and specifying a binary in a subshell does not result in local variable declaration or a modified parent shell's environment, but only a modified child's environment.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ( (TOKEN201703291601_NAME=TOKEN201703291601_VALUE ./display_env) ; ./display_env) ; ./display_env
|
||
02: [0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_NAME=TOKEN201703291601_VALUE$` once[0m
|
||
[38;5;239m 01: ------------------------------
|
||
02: TERM_PROGRAM=iTerm.app
|
||
03: TERM=screen-256color
|
||
04: SHELL=/bin/zsh
|
||
05: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
06: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
07: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
08: TERM_PROGRAM_VERSION=3.0.10
|
||
09: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
10: ZSH=/Users/ariard/.oh-my-zsh
|
||
11: USER=ariard
|
||
12: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
13: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
14: PAGER=less
|
||
15: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
16: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
17: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
18: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
19: MAIL=ariard@student.42.fr
|
||
20: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
21: LANG=en_US.UTF-8
|
||
22: ITERM_PROFILE=Default
|
||
23: XPC_FLAGS=0x0
|
||
24: TMUX_PANE=%19
|
||
25: XPC_SERVICE_NAME=0
|
||
26: SHLVL=5
|
||
27: HOME=/Users/ariard
|
||
28: COLORFGBG=7;0
|
||
29: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
30: LOGNAME=ariard
|
||
31: LESS=-R
|
||
32: LC_CTYPE=en_US.UTF-8
|
||
33: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
34: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
35: _=../../42sh
|
||
36: ?=0
|
||
37: ------------------------------
|
||
38: TOTAL ENVIRONMENT VARIABLES: 35
|
||
39: ------------------------------
|
||
40: TERM_PROGRAM=iTerm.app
|
||
41: TERM=screen-256color
|
||
42: SHELL=/bin/zsh
|
||
43: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
44: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
45: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
46: TERM_PROGRAM_VERSION=3.0.10
|
||
47: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
48: ZSH=/Users/ariard/.oh-my-zsh
|
||
49: USER=ariard
|
||
50: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
51: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
52: PAGER=less
|
||
53: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
54: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
55: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
56: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
57: MAIL=ariard@student.42.fr
|
||
58: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
59: LANG=en_US.UTF-8
|
||
60: ITERM_PROFILE=Default
|
||
61: XPC_FLAGS=0x0
|
||
62: TMUX_PANE=%19
|
||
63: XPC_SERVICE_NAME=0
|
||
64: SHLVL=5
|
||
65: HOME=/Users/ariard
|
||
66: COLORFGBG=7;0
|
||
67: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
68: LOGNAME=ariard
|
||
69: LESS=-R
|
||
70: LC_CTYPE=en_US.UTF-8
|
||
71: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
72: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
73: _=../../42sh
|
||
74: ?=0
|
||
75: ------------------------------
|
||
76: TOTAL ENVIRONMENT VARIABLES: 35
|
||
77: ------------------------------
|
||
78: TERM_PROGRAM=iTerm.app
|
||
79: TERM=screen-256color
|
||
80: SHELL=/bin/zsh
|
||
81: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
82: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
83: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
84: TERM_PROGRAM_VERSION=3.0.10
|
||
85: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
86: ZSH=/Users/ariard/.oh-my-zsh
|
||
87: USER=ariard
|
||
88: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
89: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
90: PAGER=less
|
||
91: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
92: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
93: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
94: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
95: MAIL=ariard@student.42.fr
|
||
96: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
97: LANG=en_US.UTF-8
|
||
98: ITERM_PROFILE=Default
|
||
99: XPC_FLAGS=0x0
|
||
100: TMUX_PANE=%19
|
||
101: XPC_SERVICE_NAME=0
|
||
102: SHLVL=5
|
||
103: HOME=/Users/ariard
|
||
104: COLORFGBG=7;0
|
||
105: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
106: LOGNAME=ariard
|
||
107: LESS=-R
|
||
108: LC_CTYPE=en_US.UTF-8
|
||
109: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
110: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
111: _=../../42sh
|
||
112: ?=0
|
||
113: ------------------------------
|
||
114: TOTAL ENVIRONMENT VARIABLES: 35[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/inline-environment-variable/001-modifies-child-environment-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that a binary may have its environment to be modified by appending variables inline.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: unset "TOKEN201703291601_VARIABLE"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601_VARIABLE=TOKEN201703291601_VALUE ./display_env
|
||
02: ./display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_VARIABLE=TOKEN201703291601_VALUE$` once[0m
|
||
[38;5;239m 01: ------------------------------
|
||
02: TERM_PROGRAM=iTerm.app
|
||
03: TERM=screen-256color
|
||
04: SHELL=/bin/zsh
|
||
05: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
06: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
07: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
08: TERM_PROGRAM_VERSION=3.0.10
|
||
09: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
10: ZSH=/Users/ariard/.oh-my-zsh
|
||
11: USER=ariard
|
||
12: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
13: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
14: PAGER=less
|
||
15: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
16: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
17: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
18: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
19: MAIL=ariard@student.42.fr
|
||
20: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
21: LANG=en_US.UTF-8
|
||
22: ITERM_PROFILE=Default
|
||
23: XPC_FLAGS=0x0
|
||
24: TMUX_PANE=%19
|
||
25: XPC_SERVICE_NAME=0
|
||
26: SHLVL=5
|
||
27: HOME=/Users/ariard
|
||
28: COLORFGBG=7;0
|
||
29: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
30: LOGNAME=ariard
|
||
31: LESS=-R
|
||
32: LC_CTYPE=en_US.UTF-8
|
||
33: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
34: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
35: _=../../42sh
|
||
36: ?=0
|
||
37: ------------------------------
|
||
38: TOTAL ENVIRONMENT VARIABLES: 35
|
||
39: ------------------------------
|
||
40: TERM_PROGRAM=iTerm.app
|
||
41: TERM=screen-256color
|
||
42: SHELL=/bin/zsh
|
||
43: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
44: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
45: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
46: TERM_PROGRAM_VERSION=3.0.10
|
||
47: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
48: ZSH=/Users/ariard/.oh-my-zsh
|
||
49: USER=ariard
|
||
50: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
51: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
52: PAGER=less
|
||
53: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
54: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
55: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
56: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
57: MAIL=ariard@student.42.fr
|
||
58: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
59: LANG=en_US.UTF-8
|
||
60: ITERM_PROFILE=Default
|
||
61: XPC_FLAGS=0x0
|
||
62: TMUX_PANE=%19
|
||
63: XPC_SERVICE_NAME=0
|
||
64: SHLVL=5
|
||
65: HOME=/Users/ariard
|
||
66: COLORFGBG=7;0
|
||
67: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
68: LOGNAME=ariard
|
||
69: LESS=-R
|
||
70: LC_CTYPE=en_US.UTF-8
|
||
71: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
72: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
73: _=../../42sh
|
||
74: ?=0
|
||
75: ------------------------------
|
||
76: TOTAL ENVIRONMENT VARIABLES: 35[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/inline-environment-variable/002-modifies-child-environment-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that a binary may have its environment to be modified by appending variables inline.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: unset "TOKEN201703291601_VARIABLE"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: TOKEN201703291601_VARIABLE1=TOKEN201703291601_VALUE1 TOKEN201703291601_VARIABLE2=TOKEN201703291601_VALUE2 TOKEN201703291601_VARIABLE3=TOKEN201703291601_VALUE3 ./display_env
|
||
02: ./display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_VARIABLE1=TOKEN201703291601_VALUE1$` once[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_VARIABLE2=TOKEN201703291601_VALUE2$` once[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601_VARIABLE3=TOKEN201703291601_VALUE3$` once[0m
|
||
[38;5;239m 01: ------------------------------
|
||
02: TERM_PROGRAM=iTerm.app
|
||
03: TERM=screen-256color
|
||
04: SHELL=/bin/zsh
|
||
05: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
06: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
07: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
08: TERM_PROGRAM_VERSION=3.0.10
|
||
09: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
10: ZSH=/Users/ariard/.oh-my-zsh
|
||
11: USER=ariard
|
||
12: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
13: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
14: PAGER=less
|
||
15: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
16: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
17: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
18: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
19: MAIL=ariard@student.42.fr
|
||
20: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
21: LANG=en_US.UTF-8
|
||
22: ITERM_PROFILE=Default
|
||
23: XPC_FLAGS=0x0
|
||
24: TMUX_PANE=%19
|
||
25: XPC_SERVICE_NAME=0
|
||
26: SHLVL=5
|
||
27: HOME=/Users/ariard
|
||
28: COLORFGBG=7;0
|
||
29: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
30: LOGNAME=ariard
|
||
31: LESS=-R
|
||
32: LC_CTYPE=en_US.UTF-8
|
||
33: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
34: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
35: _=../../42sh
|
||
36: ?=0
|
||
37: ------------------------------
|
||
38: TOTAL ENVIRONMENT VARIABLES: 35
|
||
39: ------------------------------
|
||
40: TERM_PROGRAM=iTerm.app
|
||
41: TERM=screen-256color
|
||
42: SHELL=/bin/zsh
|
||
43: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
44: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
45: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
46: TERM_PROGRAM_VERSION=3.0.10
|
||
47: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
48: ZSH=/Users/ariard/.oh-my-zsh
|
||
49: USER=ariard
|
||
50: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
51: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
52: PAGER=less
|
||
53: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
54: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
55: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
56: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
57: MAIL=ariard@student.42.fr
|
||
58: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
59: LANG=en_US.UTF-8
|
||
60: ITERM_PROFILE=Default
|
||
61: XPC_FLAGS=0x0
|
||
62: TMUX_PANE=%19
|
||
63: XPC_SERVICE_NAME=0
|
||
64: SHLVL=5
|
||
65: HOME=/Users/ariard
|
||
66: COLORFGBG=7;0
|
||
67: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
68: LOGNAME=ariard
|
||
69: LESS=-R
|
||
70: LC_CTYPE=en_US.UTF-8
|
||
71: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
72: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester
|
||
73: _=../../42sh
|
||
74: ?=0
|
||
75: ------------------------------
|
||
76: TOTAL ENVIRONMENT VARIABLES: 35[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/inline-environment-variable/003-modifies-PATH-only[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that a binary may have its environment to be modified by appending variables inline.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "temporary_directory"
|
||
02: mkdir -p "temporary_directory"
|
||
03: cd "temporary_directory"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: PATH=.. write_on_stdout TOKEN201703291601
|
||
02: exit_with_status 42[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^TOKEN201703291601$`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not be_empty[0m
|
||
[31m[1;33m WARNING might match_regex `[Cc]ommand not found`[0m
|
||
[38;5;239m 01: ./lib/main.sh: line 102: ../../42sh: No such file or directory[0m
|
||
|
||
MISC:
|
||
[31m[38;5;34m SUCCESS expected_to_not exit_with_status `42`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/separators/and/errors/001-parse-error-at-beginning[0m [31m[1;33m(WARNING)[0m
|
||
|
||
Description:
|
||
[38;5;239m Parsing test.
|
||
The purpose of this test is to check that the AND operator `&&` must be placed after a valid command.
|
||
If not, the Shell should display an error and exit with an error status code.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: && ./write_on_stdout TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[1;33m WARNING might_not match_regex `TOKEN201703291601`[0m
|
||
[31m[1;33m WARNING might be_empty[0m
|
||
[38;5;239m 01: TOKEN201703291601[0m
|
||
|
||
STDERR:
|
||
[31m[1;33m WARNING might_not be_empty[0m
|
||
[31m[1;33m WARNING might match_regex `([Ss]yntax|[Pp]arse) error`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
MISC:
|
||
[31m[1;33m WARNING might_not exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/separators/and/errors/002-parse-error-too-much-symbol[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m Parsing test.
|
||
The purpose of this test is to check that more than two '&' operators are detected as a syntax error.
|
||
It should not execute the two commands `write_on_stdout` but display an error and exit with an error status code.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout TOKEN201703291601 &&& ./write_on_stdout TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS might_not match_regex `TOKEN201703291601`[0m
|
||
[31m[38;5;34m SUCCESS might be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS might_not be_empty[0m
|
||
[31m[38;5;34m SUCCESS might match_regex `([Ss]yntax|[Pp]arse) error`[0m
|
||
[38;5;239m 01: syntax error near unexpected token `&'[0m
|
||
|
||
MISC:
|
||
[31m[38;5;160m FAILURE expected_to_not exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/separators/or/errors/001-parse-error-at-beginning[0m [31m[1;33m(WARNING)[0m
|
||
|
||
Description:
|
||
[38;5;239m Parsing test.
|
||
The purpose of this test is to check that the OR operator `||` must be placed after a valid command.
|
||
If not, the Shell should display an error and exit with an error status code.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: || ./write_on_stdout TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS might be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[1;33m WARNING might_not be_empty[0m
|
||
[31m[1;33m WARNING might match_regex `([Ss]yntax|[Pp]arse) error`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
MISC:
|
||
[31m[1;33m WARNING might_not exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/separators/or/errors/002-parse-error-too-much-symbol[0m [31m[1;33m(WARNING)[0m
|
||
|
||
Description:
|
||
[38;5;239m Parsing test.
|
||
The purpose of this test is to check that using more than two pipe symbols `|` is detected as an error.
|
||
The Shell should display an error and exit with a error status code.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout TOKEN201703291601 ||| ./write_on_stdout TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS might be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS might_not be_empty[0m
|
||
[31m[38;5;34m SUCCESS might match_regex `([Ss]yntax|[Pp]arse) error`[0m
|
||
[38;5;239m 01: syntax error near unexpected token `|'[0m
|
||
|
||
MISC:
|
||
[31m[1;33m WARNING might_not exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/tilde-expansion/003-expanded-with-PWD-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the symbol tilde `~` may be expanded with the environment variable PWD when followed by the symbol `+`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout ~+[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `~[+]`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `/TOKEN201703291601[+]`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^/Users/ariard/Projects/42sh/42ShellTester/tmp$`[0m
|
||
[38;5;239m 01: /TOKEN201703291601+[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/tilde-expansion/004-expanded-with-PWD-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the symbol tilde `~` may be expanded with the environment variable PWD when followed by the symbol `+`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout ~+/TOKEN201703291601_SUBDIRECTORY[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `~+/TOKEN201703291601_SUBDIRECTORY`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `/TOKEN201703291601[+]/TOKEN201703291601_SUBDIRECTORY`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^/Users/ariard/Projects/42sh/42ShellTester/tmp/TOKEN201703291601_SUBDIRECTORY$`[0m
|
||
[38;5;239m 01: /TOKEN201703291601+/TOKEN201703291601_SUBDIRECTORY[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/tilde-expansion/005-expanded-with-OLDPWD-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the symbol tilde `~` may be expanded with the environment variable OLDPWD when followed by the symbol `+`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./TOKEN201703291601_SUBDIRECTORY"
|
||
02: mkdir "./TOKEN201703291601_SUBDIRECTORY"
|
||
03: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: cd ./TOKEN201703291601_SUBDIRECTORY
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_on_stdout ~-[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `~-`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `/TOKEN201703291601-`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^/Users/ariard/Projects/42sh/42ShellTester/tmp$`[0m
|
||
[38;5;239m 01: /TOKEN201703291601-[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/tilde-expansion/006-expanded-with-OLDPWD-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the symbol tilde `~` may be expanded with the environment variable OLDPWD when followed by the symbol `+`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./TOKEN201703291601_SUBDIRECTORY"
|
||
02: mkdir "./TOKEN201703291601_SUBDIRECTORY"
|
||
03: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: cd ./TOKEN201703291601_SUBDIRECTORY
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_on_stdout ~-/TOKEN201703291601_OTHERDIRECTORY[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `~-/TOKEN201703291601_OTHERDIRECTORY`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `/TOKEN201703291601-/TOKEN201703291601_OTHERDIRECTORY`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^/Users/ariard/Projects/42sh/42ShellTester/tmp/TOKEN201703291601_OTHERDIRECTORY$`[0m
|
||
[38;5;239m 01: /TOKEN201703291601-/TOKEN201703291601_OTHERDIRECTORY[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/tilde-expansion/not-expanded/001-not-expanded-with-HOME-1[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the symbol tilde `~` may be not expanded when not followed by an authorized symbol or user name.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout ~~[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^~~$`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `/TOKEN201703291601`[0m
|
||
[38;5;239m 01: /TOKEN201703291601~[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/tilde-expansion/not-expanded/002-not-expanded-with-HOME-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the symbol tilde `~` may be not expanded when not followed by an authorized symbol or user name.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout ~TOKEN201703291601_UNKNOWNUSER[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^~TOKEN201703291601_UNKNOWNUSER$`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `/TOKEN201703291601TOKEN201703291601_UNKNOWNUSER`[0m
|
||
[38;5;239m 01: /TOKEN201703291601TOKEN201703291601_UNKNOWNUSER[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/tilde-expansion/not-expanded/003-not-expanded-with-PWD[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the symbol tilde `~` is not expanded with the environment variable PWD when not followed by the symbol `/`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./write_on_stdout ~+TOKEN201703291601_SUBDIRECTORY[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^~[+]TOKEN201703291601_SUBDIRECTORY$`[0m
|
||
[31m[38;5;160m FAILURE expected_to_not match_regex `/TOKEN201703291601[+]TOKEN201703291601_SUBDIRECTORY`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `/Users/ariard/Projects/42sh/42ShellTester/tmpTOKEN201703291601_SUBDIRECTORY`[0m
|
||
[38;5;239m 01: /TOKEN201703291601+TOKEN201703291601_SUBDIRECTORY[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mbonuses/tilde-expansion/not-expanded/004-not-expanded-with-OLDPWD[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the symbol tilde `~` is not expanded with the environment variable OLDPWD when not followed by the symbol `/`.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf "./TOKEN201703291601_SUBDIRECTORY"
|
||
02: mkdir "./TOKEN201703291601_SUBDIRECTORY"
|
||
03: export "HOME=/TOKEN201703291601"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: cd ./TOKEN201703291601_SUBDIRECTORY
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/write_on_stdout ~-TOKEN201703291601_OTHERDIRECTORY[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^~-TOKEN201703291601_OTHERDIRECTORY$`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `/TOKEN201703291601-/TOKEN201703291601_OTHERDIRECTORY`[0m
|
||
[31m[38;5;34m SUCCESS expected_to_not match_regex `/Users/ariard/Projects/42sh/42ShellTester/tmp/TOKEN201703291601_OTHERDIRECTORY`[0m
|
||
[38;5;239m 01: /TOKEN201703291601-TOKEN201703291601_OTHERDIRECTORY[0m
|
||
|
||
STDERR:
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mminishell/binary/004-binary-test-empty-path[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that the Shell finds binaries that are located in the current directory when the environment variable PATH is empty.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: export PATH=""[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: write_on_stdout "TOKEN201703291601"[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;160m FAILURE expected_to match_regex `TOKEN201703291601`[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;160m FAILURE expected_to be_empty[0m
|
||
[38;5;239m 01: ../../42sh: command not found: write_on_stdout[0m
|
||
|
||
MISC:
|
||
[31m[38;5;160m FAILURE expected_to exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mminishell/binary/008-binary-too-many-symbolic-links-encountered[0m [31m[1;33m(WARNING)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that trying to execute a path that encounters an infinite loop of symbolic link results in an error on standard error and a failure exit status.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -rf ./symbolic_link1 ./symbolic_link2 ./symbolic_link3
|
||
02: ln -s ./symbolic_link1 ./symbolic_link2
|
||
03: ln -s ./symbolic_link2 ./symbolic_link3
|
||
04: ln -s ./symbolic_link3 ./symbolic_link1[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: ./symbolic_link1[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS might be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not be_empty[0m
|
||
[31m[1;33m WARNING might match_regex `[Tt]oo many.*symbolic links`[0m
|
||
[38;5;239m 01: ../../42sh: ./symbolic_link1: no such file or directory[0m
|
||
|
||
MISC:
|
||
[31m[38;5;34m SUCCESS expected_to_not exit_with_status 0[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mminishell/builtins/cd/007-symbolic-link[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using a symbolic link as first argument with the builtin `cd` results in moving the linked directory.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "./symbolic_link"
|
||
02: mkdir -p "./sub_directory"
|
||
03: ln -s "./sub_directory" "./symbolic_link"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: cd symbolic_link
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/display_pwd
|
||
03: /Users/ariard/Projects/42sh/42ShellTester/tmp/display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to match_regex `PWD:/Users/ariard/Projects/42sh/42ShellTester/tmp/sub_directory:PWD$`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp/symbolic_link$`[0m
|
||
[38;5;239m 01: PWD:/Users/ariard/Projects/42sh/42ShellTester/tmp/sub_directory:PWD
|
||
02: ------------------------------
|
||
03: TERM_PROGRAM=iTerm.app
|
||
04: TERM=screen-256color
|
||
05: SHELL=/bin/zsh
|
||
06: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
07: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
08: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
09: TERM_PROGRAM_VERSION=3.0.10
|
||
10: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
11: ZSH=/Users/ariard/.oh-my-zsh
|
||
12: USER=ariard
|
||
13: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
14: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
15: PAGER=less
|
||
16: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
17: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
18: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
19: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
20: MAIL=ariard@student.42.fr
|
||
21: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp/sub_directory
|
||
22: LANG=en_US.UTF-8
|
||
23: ITERM_PROFILE=Default
|
||
24: XPC_FLAGS=0x0
|
||
25: TMUX_PANE=%19
|
||
26: XPC_SERVICE_NAME=0
|
||
27: SHLVL=5
|
||
28: HOME=/Users/ariard
|
||
29: COLORFGBG=7;0
|
||
30: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
31: LOGNAME=ariard
|
||
32: LESS=-R
|
||
33: LC_CTYPE=en_US.UTF-8
|
||
34: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
35: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
36: _=../../42sh
|
||
37: ?=0
|
||
38: ------------------------------
|
||
39: TOTAL ENVIRONMENT VARIABLES: 35[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mminishell/builtins/cd/008-symbolic-link-2[0m [31m[38;5;160m(FAILED)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using a symbolic link as first argument with the builtin `cd` results in moving to the linked directory. In this test, the directory is linked with to chained symbolic links.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "./symbolic_link1" "./symbolic_link2"
|
||
02: mkdir -p "./sub_directory"
|
||
03: ln -s "./sub_directory" "./symbolic_link1"
|
||
04: ln -s "./symbolic_link1" "./symbolic_link2"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: cd symbolic_link2
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/display_pwd
|
||
03: /Users/ariard/Projects/42sh/42ShellTester/tmp/display_env[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to match_regex `PWD:/Users/ariard/Projects/42sh/42ShellTester/tmp/sub_directory:PWD$`[0m
|
||
[31m[38;5;160m FAILURE expected_to match_regex `^PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp/symbolic_link2$`[0m
|
||
[38;5;239m 01: PWD:/Users/ariard/Projects/42sh/42ShellTester/tmp/sub_directory:PWD
|
||
02: ------------------------------
|
||
03: TERM_PROGRAM=iTerm.app
|
||
04: TERM=screen-256color
|
||
05: SHELL=/bin/zsh
|
||
06: HOMEBREW_TEMP=/tmp/ariard/Homebrew/Temp
|
||
07: TMPDIR=/var/folders/zz/zyxvpxvq6csfxvn_n0002_2m000khn/T/
|
||
08: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.4f2AkmTXni/Render
|
||
09: TERM_PROGRAM_VERSION=3.0.10
|
||
10: TERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
11: ZSH=/Users/ariard/.oh-my-zsh
|
||
12: USER=ariard
|
||
13: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.VotSnLjyD2/Listeners
|
||
14: __CF_USER_TEXT_ENCODING=0x4A15:0x0:0x0
|
||
15: PAGER=less
|
||
16: TMUX=/private/tmp/tmux-18965/default,460,2
|
||
17: HOMEBREW_CACHE=/tmp/ariard/Homebrew/Caches
|
||
18: LSCOLORS=Gxfxcxdxbxegedabagacad
|
||
19: PATH=/Users/ariard/.brew/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki://Users/ariard/local/bin
|
||
20: MAIL=ariard@student.42.fr
|
||
21: PWD=/Users/ariard/Projects/42sh/42ShellTester/tmp/sub_directory
|
||
22: LANG=en_US.UTF-8
|
||
23: ITERM_PROFILE=Default
|
||
24: XPC_FLAGS=0x0
|
||
25: TMUX_PANE=%19
|
||
26: XPC_SERVICE_NAME=0
|
||
27: SHLVL=5
|
||
28: HOME=/Users/ariard
|
||
29: COLORFGBG=7;0
|
||
30: ITERM_SESSION_ID=w0t0p0:27D68FBB-A085-467A-8F02-568DA11416F0
|
||
31: LOGNAME=ariard
|
||
32: LESS=-R
|
||
33: LC_CTYPE=en_US.UTF-8
|
||
34: TMUX_PLUGIN_MANAGER_PATH=/Users/ariard/.tmux/plugins/
|
||
35: OLDPWD=/Users/ariard/Projects/42sh/42ShellTester/tmp
|
||
36: _=../../42sh
|
||
37: ?=0
|
||
38: ------------------------------
|
||
39: TOTAL ENVIRONMENT VARIABLES: 35[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to be_empty[0m
|
||
[38;5;239m (no output)[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mminishell/builtins/cd/errors/005-too-many-symbolic-links-encountered[0m [31m[1;33m(WARNING)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using a symbolic link resulting in ELOOP error as first argument with the builtin `cd` results in error and not changing current directory.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "./symbolic_link1" "./symbolic_link2" "./symbolic_link3"
|
||
02: ln -s "./symbolic_link1" "./symbolic_link2"
|
||
03: ln -s "./symbolic_link2" "./symbolic_link3"
|
||
04: ln -s "./symbolic_link3" "./symbolic_link1"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: cd symbolic_link1
|
||
02: /Users/ariard/Projects/42sh/42ShellTester/tmp/display_pwd[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to match_regex `PWD:/Users/ariard/Projects/42sh/42ShellTester/tmp:PWD`[0m
|
||
[38;5;239m 01: PWD:/Users/ariard/Projects/42sh/42ShellTester/tmp:PWD[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not be_empty[0m
|
||
[31m[1;33m WARNING might match_regex `[Tt]oo many.*symbolic links`[0m
|
||
[38;5;239m 01: ../../42sh: cd : symbolic_link1: No such file or directory[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mminishell/builtins/env/errors/001-command-not-found[0m [31m[1;33m(WARNING)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using the builtin `env` with an invalid binary as argument results in an error and failure exit status.[0m
|
||
|
||
Before test:
|
||
[38;5;239m 01: rm -f "./invalid_binary"[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: env ./invalid_binary[0m
|
||
|
||
STDOUT:
|
||
[38;5;239m (no output)[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not be_empty[0m
|
||
[31m[1;33m WARNING might match_regex `[Cc]ommand not found`[0m
|
||
[38;5;239m 01: ../../42sh: env: ./invalid_binary: No such file or directory[0m
|
||
|
||
MISC:
|
||
[31m[38;5;34m SUCCESS expected_to_not exit_with_status `0`[0m
|
||
|
||
----------------------------------------------------------------
|
||
|
||
[37;1mminishell/builtins/exit/errors/001-too-many-args[0m [31m[1;33m(WARNING)[0m
|
||
|
||
Description:
|
||
[38;5;239m The purpose of this test is to check that using a wrong number of arguments with the builtin `exit` does not result in the Shell termination but an error on standard error.[0m
|
||
|
||
STDIN:
|
||
[38;5;239m 01: exit 21 42
|
||
02: ./write_on_stdout TOKEN201703291601[0m
|
||
|
||
STDOUT:
|
||
[31m[38;5;34m SUCCESS expected_to match_regex `TOKEN201703291601`[0m
|
||
[38;5;239m 01: TOKEN201703291601[0m
|
||
|
||
STDERR:
|
||
[31m[38;5;34m SUCCESS expected_to_not be_empty[0m
|
||
[31m[1;33m WARNING might match_regex `([Tt]oo many arguments|[Aa]rgument list too long)`[0m
|
||
[38;5;239m 01: ../../42sh: exit: too many argument required[0m
|
||
|
||
MISC:
|
||
[31m[38;5;34m SUCCESS expected_to exit_with_status `0`[0m
|
||
|
||
Total tests: 281
|
||
Total failed tests: 95
|
||
Total pending tests: 3
|