run-all.sh 3.0 KB

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