diff options
| author | Charles <sircharlesaze@gmail.com> | 2020-01-22 09:51:32 +0100 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2020-01-22 09:51:32 +0100 |
| commit | 6a83ee598406e9ee4bdd7169dfc4bb46284a2062 (patch) | |
| tree | c1037182050c49ea08ce8a647ed1252ca10e7136 | |
| parent | 43304a35258b8720bad6eda609d3eae793b447f2 (diff) | |
| download | push_swap-6a83ee598406e9ee4bdd7169dfc4bb46284a2062.tar.gz push_swap-6a83ee598406e9ee4bdd7169dfc4bb46284a2062.tar.bz2 push_swap-6a83ee598406e9ee4bdd7169dfc4bb46284a2062.zip | |
Fixing error tests, added author file
| -rw-r--r-- | author | 1 | ||||
| -rwxr-xr-x | test.sh | 82 |
2 files changed, 45 insertions, 38 deletions
@@ -0,0 +1 @@ +cacharle @@ -18,12 +18,12 @@ MIN_LONG1=-9223372036854775809 test_status=0 red() { - echo -n "\033[31m$1\033[0m " + echo "$(tput setaf 1)$1$(tput sgr 0)\c" test_status=1 } green() { - echo -n "\033[32m$1\033[0m " + echo "$(tput setaf 2)$1$(tput sgr 0)\c" } assert() { @@ -31,7 +31,11 @@ assert() { red "[KO] " return 0 fi - if [ -z $1 -o -z $2 ]; then + if [ -z $1 ]; then + red "[KO] " + return 0 + fi + if [ -z $2 ]; then red "[KO] " return 0 fi @@ -51,27 +55,25 @@ assert_error() { } if [ $1 = "--error" ]; then - echo -n "No arguments: " - if [ -z `./checker` ]; then - green "[OK] " - else - red "[KO] " + echo "No arguments: \c" + if [ -z `./checker` ] + then green "[OK] " + else red "[KO] " fi - if [ -z `./push_swap` ]; then - green "[OK] " - else - red "[KO] " + if [ -z `./push_swap` ] + then green "[OK] " + else red "[KO] " fi - echo -n "\nNot digit character " - assert_error `checker 1 2 3 four 2>&1` + echo "\nNot digit character \c" + assert_error `./checker 1 2 3 four 2>&1` assert_error `./checker -1 2 3-3 2>&1` assert_error `./checker 1_000 23 0 -1 2>&1` assert_error `./push_swap 1 2 3 four 2>&1` assert_error `./push_swap -1 2 3-3 2>&1` assert_error `./push_swap 1_000 23 0 -1 2>&1` - echo -n "\nDuplicates " + echo "\nDuplicates \c" assert_error `./checker 1 1 2 3 2>&1` assert_error `./checker 1 2 3 3 2>&1` assert_error `./checker -1 0 2 0 2>&1` @@ -83,26 +85,30 @@ if [ $1 = "--error" ]; then assert_error `./push_swap -100 2 -100 2>&1` assert_error `./push_swap 1 1 2>&1` - echo -n "\nMax/min int " - assert_ok `echo -n "" | ./checker $MIN_INT 2>&1` - assert_ok `echo -n "" | ./checker $MAX_INT 2>&1` - assert_error `echo -n "" | ./checker $MIN_INT1 2>&1` - assert_error `echo -n "" | ./checker $MAX_INT1 2>&1` - assert `push_swap $MIN_INT 2>&1` "" - assert `push_swap $MAX_INT 2>&1` "" - assert_error `push_swap $MIN_INT1 2>&1` - assert_error `push_swap $MAX_INT1 2>&1` - - - echo - red "Undefined behavior with > MAX_INT values, strtol not working properly" - echo -n "\nMax/min long " - assert_ok `echo -n "" | ./checker $MIN_LONG 2>&1` - assert_ok `echo -n "" | ./checker $MAX_LONG 2>&1` - assert_error `echo -n "" | ./checker $MIN_LONG1 2>&1` - assert_error `echo -n "" | ./checker $MAX_LONG1 2>&1` - assert `./push_swap $MIN_LONG 2>&1` "" - assert `./push_swap $MAX_LONG 2>&1` "" + echo "\nMax/min int \c" + assert_ok `echo "\c" | ./checker $MIN_INT 2>&1` + assert_ok `echo "\c" | ./checker $MAX_INT 2>&1` + assert_error `echo "\c" | ./checker $MIN_INT1 2>&1` + assert_error `echo "\c" | ./checker $MAX_INT1 2>&1` + if [ -z `./push_swap $MIN_INT 2>&1` ] + then green "[OK] " + else red "[KO] " + fi + if [ -z `./push_swap $MAX_INT 2>&1` ] + then green "[OK] " + else red "[KO] " + fi + assert_error `./push_swap $MIN_INT1 2>&1` + assert_error `./push_swap $MAX_INT1 2>&1` + + + echo "\nMax/min long \c" + assert_error `echo "\c" | ./checker $MIN_LONG 2>&1` + assert_error `echo "\c" | ./checker $MAX_LONG 2>&1` + assert_error `echo "\c" | ./checker $MIN_LONG1 2>&1` + assert_error `echo "\c" | ./checker $MAX_LONG1 2>&1` + assert_error `./push_swap $MIN_LONG 2>&1` + assert_error `./push_swap $MAX_LONG 2>&1` assert_error `./push_swap $MIN_LONG1 2>&1` assert_error `./push_swap $MAX_LONG1 2>&1` @@ -129,14 +135,14 @@ for i in `seq 1 $test_nb`; do case $result in "OK") - green "\033[32m.\033[0m" + green "." ;; "KO") - red "\033[31m!\033[0m" + red "!" echo "Test $i failed with: $arg" >> result.log ;; "Error") - red "\033[31m!\033[0m" + red "!" echo "Test $i failed due to parsing error with: $arg" >> result.log ;; *) |
