Facebook
From Ungracious Pheasant, 6 Years ago, written in Bash.
Embed
Download Paste or View Raw
Hits: 260
  1. #!/bin/bash
  2. number_test=1000
  3.  
  4. echo "SKA TEST"
  5. echo "Compiling..."
  6. g++ -std=c++11 ska.cpp -o ska
  7. g++ -std=c++11 ska_test.cpp -o ska_test
  8. g++ -std=c++11 B.cpp -o B
  9.  
  10. echo "Compiling - OK"
  11.  
  12. echo "Small TESTS"
  13. for((i=1;i<=number_test;i++))
  14. do     
  15.         echo "Test nr "$i
  16.         ./ska_test 100 > test.in
  17.         ./ska < test.in > ans.out
  18.         ./B < test.in > bans.out
  19.        
  20.         if ! diff -bB ans.out bans.out ;
  21.         then
  22.                 echo "ERROR:"
  23.                 cat test.in
  24.                 echo "Your answer: "
  25.                 cat bans.out
  26.                 echo "Correct answer: "
  27.                 cat ans.out
  28.                 exit
  29.         fi
  30. done
  31. echo "Small TESTS - OK"
  32.  
  33. echo "Middle TESTS"  
  34. for((i=1;i<=number_test;i++))
  35. do
  36.         echo "Test nr "$i
  37.         ./ska_test 10000 > test.in
  38.         ./ska < test.in > ans.out
  39.         ./B < test.in > bans.out
  40.        
  41.         if ! diff -bB ans.out bans.out ;
  42.         then
  43.                 echo "ERROR:"
  44.                 cat test.in
  45.                 echo "Your answer: "
  46.                 cat bans.out
  47.                 echo "Correct answer: "
  48.                 cat ans.out
  49.                 exit
  50.         fi
  51. done
  52. echo "Middle TESTS - OK"
  53.  
  54. echo "Big TESTS"
  55. for((i=1;i<=number_test;i++))
  56. do
  57.         echo "Test nr "$i
  58.         ./ska_test 1000000 > test.in
  59.         ./ska < test.in > ans.out
  60.         ./B < test.in > bans.out
  61.        
  62.         if ! diff -bB ans.out bans.out ;
  63.         then
  64.                 echo "ERROR:"
  65.                 cat test.in
  66.                 echo "Your answer: "
  67.                 cat bans.out
  68.                 echo "Correct answer: "
  69.                 cat ans.out
  70.                 exit
  71.         fi
  72. done
  73. echo "Big TESTS - OK"
  74.