run-all.sh 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. #!/bin/sh
  2. errors=0
  3. umask 0002
  4. if [ -z "$DBFILE" ]; then
  5. DB=""
  6. else
  7. DB="-S $DBFILE"
  8. if [ -n "$BUILD" ]; then
  9. DB="$DB -b $BUILD"
  10. fi
  11. fi
  12. if [ "x$1" = "xconcurrent-valgrind" ]; then
  13. if ! ./start.sh concurrent valgrind; then
  14. echo "Could not start test environment" > logs/last-debug
  15. exit 1
  16. fi
  17. DATE=`ls -1tr logs | tail -1 | cut -f1 -d-`
  18. rm logs/last-debug
  19. for i in autogo discovery grpform; do
  20. ./run-tests.py -l logs/$DATE-run-$i $DB -e logs/$DATE-failed-$i -r logs/results.txt -f test_p2p_$i.py || errors=1
  21. cat logs/$DATE-run-$i >> logs/last-debug
  22. done
  23. ./stop-wifi.sh
  24. failures=`grep "ERROR SUMMARY" logs/$DATE-valgrind-* | grep -v " 0 errors" | wc -l`
  25. if [ $failures -gt 0 ]; then
  26. echo "Mark as failed due to valgrind errors"
  27. errors=1
  28. fi
  29. if [ $errors -gt 0 ]; then
  30. tar czf /tmp/hwsim-tests-$DATE-FAILED-concurrent-valgrind.tar.gz logs/$DATE*
  31. exit 1
  32. fi
  33. elif [ "x$1" = "xconcurrent" ]; then
  34. if ! ./start.sh concurrent; then
  35. echo "Could not start test environment" > logs/last-debug
  36. exit 1
  37. fi
  38. DATE=`ls -1tr logs | tail -1 | cut -f1 -d-`
  39. rm logs/last-debug
  40. for i in autogo discovery grpform; do
  41. ./run-tests.py -l logs/$DATE-run-$i $DB -e logs/$DATE-failed-$i -r logs/results.txt -f test_p2p_$i.py || errors=1
  42. cat logs/$DATE-run-$i >> logs/last-debug
  43. done
  44. ./stop-wifi.sh
  45. if [ $errors -gt 0 ]; then
  46. tar czf /tmp/hwsim-tests-$DATE-FAILED-concurrent.tar.gz logs/$DATE*
  47. exit 1
  48. fi
  49. elif [ "x$1" = "xvalgrind" ]; then
  50. if ! ./start.sh valgrind; then
  51. echo "Could not start test environment" > logs/last-debug
  52. exit 1
  53. fi
  54. DATE=`ls -1tr logs | tail -1 | cut -f1 -d-`
  55. ./run-tests.py -l logs/$DATE-run $DB -e logs/$DATE-failed -r logs/results.txt || errors=1
  56. cat logs/$DATE-run > logs/last-debug
  57. ./stop-wifi.sh
  58. failures=`grep "ERROR SUMMARY" logs/$DATE-valgrind-* | grep -v " 0 errors" | wc -l`
  59. if [ $failures -gt 0 ]; then
  60. echo "Mark as failed due to valgrind errors"
  61. errors=1
  62. fi
  63. if [ $errors -gt 0 ]; then
  64. tar czf /tmp/hwsim-tests-$DATE-FAILED-valgrind.tar.gz logs/$DATE*
  65. exit 1
  66. fi
  67. elif [ "x$1" = "xtrace" ]; then
  68. if ! ./start.sh trace; then
  69. echo "Could not start test environment" > logs/last-debug
  70. exit 1
  71. fi
  72. DATE=`ls -1tr logs | tail -1 | cut -f1 -d-`
  73. sudo trace-cmd record -o logs/$DATE-trace.dat -e mac80211 -e cfg80211 su $USER -c "./run-tests.py -l logs/$DATE-run $DB -e logs/$DATE-failed -r logs/results.txt" || errors=1
  74. if [ -e logs/$DATE-failed ]; then
  75. error=1
  76. fi
  77. sudo chown $USER logs/$DATE-trace.dat
  78. cat logs/$DATE-run > logs/last-debug
  79. ./stop-wifi.sh
  80. if [ $errors -gt 0 ]; then
  81. tar czf /tmp/hwsim-tests-$DATE-FAILED-trace.tar.gz logs/$DATE*
  82. exit 1
  83. fi
  84. else
  85. if ! ./start.sh; then
  86. echo "Could not start test environment" > logs/last-debug
  87. exit 1
  88. fi
  89. DATE=`ls -1tr logs | tail -1 | cut -f1 -d-`
  90. ./run-tests.py -l logs/$DATE-run $DB -e logs/$DATE-failed -r logs/results.txt || errors=1
  91. cat logs/$DATE-run > logs/last-debug
  92. ./stop-wifi.sh
  93. if [ $errors -gt 0 ]; then
  94. tar czf /tmp/hwsim-tests-$DATE-FAILED.tar.gz logs/$DATE*
  95. exit 1
  96. fi
  97. fi
  98. echo "ALL-PASSED"