testing/collatz_test
changeset 127 b4def82f3f9f
parent 125 dcaab8068baa
child 128 166bb9b6b20a
equal deleted inserted replaced
126:c40f364d87eb 127:b4def82f3f9f
    13 
    13 
    14 
    14 
    15 # compilation tests
    15 # compilation tests
    16 
    16 
    17 function scala_compile {
    17 function scala_compile {
    18   (ulimit -t 30 -m 1024000 ; scala "$1" 2> $out 1> $out) 
    18   (ulimit -t 30 -m 1024000 ; scala "$1" 2>> $out 1>> $out) 
    19 }
    19 }
    20 
    20 
    21 # functional tests
    21 # functional tests
    22 
    22 
    23 function scala_assert {
    23 function scala_assert {
    38 if (scala_vars collatz.scala)
    38 if (scala_vars collatz.scala)
    39 then
    39 then
    40   echo "  --> fail" >> $out
    40   echo "  --> fail" >> $out
    41   tsts0=$(( 1 ))
    41   tsts0=$(( 1 ))
    42 else
    42 else
    43   echo "  --> yes" >> $out
    43   echo "  --> success" >> $out
    44   tsts0=$(( 0 )) 
    44   tsts0=$(( 0 )) 
    45 fi
    45 fi
    46 
    46 
    47 ### compilation test
    47 ### compilation test
    48 
    48 
    65 
    65 
    66 ### collatz tests
    66 ### collatz tests
    67 
    67 
    68 if [ $tsts -eq 0 ]
    68 if [ $tsts -eq 0 ]
    69 then
    69 then
       
    70   echo "collatz.scala tests:" >> $out
    70   echo "  collatz(1) == 0,1 or 4" >> $out
    71   echo "  collatz(1) == 0,1 or 4" >> $out
    71   echo "  collatz(6) == 9" >> $out
    72   echo "  collatz(6) == 9" >> $out
    72   echo "  collatz(9) == 20" >> $out
    73   echo "  collatz(9) == 20" >> $out
    73 
    74 
    74   if (scala_assert "collatz.scala" "collatz_test1.scala")
    75   if (scala_assert "collatz.scala" "collatz_test1.scala")
    81 
    82 
    82 ### collatz-max tests
    83 ### collatz-max tests
    83 
    84 
    84 if [ $tsts -eq 0 ]
    85 if [ $tsts -eq 0 ]
    85 then
    86 then
    86   echo "  collatz_max(10) == (9, 20)" >> $out
    87   echo "  collatz_max(10) == (20, 9)" >> $out
    87   echo "  collatz_max(100) == (97, 119)" >> $out
    88   echo "  collatz_max(100) == (119, 97)" >> $out
    88   echo "  collatz_max(1000) == (871, 179)" >> $out
    89   echo "  collatz_max(1000) == (179, 871)" >> $out
    89   echo "  collatz_max(10000) == (6171, 262)" >> $out
    90   echo "  collatz_max(10000) == (262, 6171)" >> $out
    90   echo "  collatz_max(100000) == (77031, 351)" >> $out
    91   echo "  collatz_max(100000) == (351, 77031)" >> $out
    91   echo "  collatz_max(1000000) == (837799, 525)" >> $out
    92   echo "  collatz_max(1000000) == (525, 837799)" >> $out
    92 
    93 
    93   if (scala_assert "collatz.scala" "collatz_test2.scala") 
    94   if (scala_assert "collatz.scala" "collatz_test2.scala") 
    94   then
    95   then
    95     echo "  --> success" >> $out
    96     echo "  --> success" >> $out
    96   else
    97   else