Nav apraksta

test.sh 1.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #!/bin/bash
  2. set -e
  3. TEST_APP_NAME='RNFetchBlobTest'
  4. TEST_APP_PATH="$(pwd)/${TEST_APP_NAME}"
  5. TARGET='android'
  6. CWD=$(pwd)
  7. if [ "$#" -eq 1 ]; then
  8. if [ "$1" == 'android' ]; then
  9. TARGET="$1"
  10. echo 'start android test'
  11. elif [ "$1" == 'ios' ]; then
  12. TARGET="$1"
  13. echo 'start ios test'
  14. else
  15. exit "unrecongized target platform $1, please specify a target platform `ios` or `android`."
  16. fi
  17. elif [ "$#" -gt 2 ] && [ "$1" == 'path' ]; then
  18. TEST_APP_PATH="$2"
  19. TARGET="$3"
  20. echo "use exist test app path=$2 target=$3"
  21. else
  22. exit "unrecongized arguments."
  23. fi
  24. # Create new rn project
  25. if [ "$#" -eq 1 ]; then
  26. echo 'creating test app RNFetchBlobTest ..'
  27. react-native init "${TEST_APP_NAME}"
  28. fi
  29. # copy js files to test app folder
  30. cp -R test/ "${TEST_APP_PATH}/"
  31. # install module
  32. cd "${TEST_APP_PATH}"
  33. npm install --save "${CWD}/src"
  34. rnpm link
  35. # start RN
  36. cd "${TEST_APP_PATH}"
  37. if [ "$#" == 4 ]; then
  38. sed -i.bak "s/${TEST_APP_NAME}/$4/" ./index.test.js
  39. fi
  40. react-native "run-${TARGET}"
  41. # install dev packages
  42. cd ${CWD}
  43. npm install
  44. # start test server
  45. cd "${CWD}/test-server"
  46. # kill existing server
  47. kill "$(lsof | grep :8123 | awk '{ printf $2 }')"
  48. node server