runAllScreenshotCombinations 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #!/bin/bash
  2. ## $1 noCI/stable/master: wether to run deleteOldComments.sh or uploadReport.sh
  3. ## $2 true/false: record or verify screenshots
  4. ## $3 classMethod: piped from androidScreenshotTest
  5. ## $4 github event number
  6. sed -i s'#<bool name="is_beta">false</bool>#<bool name="is_beta">true</bool>#'g app/src/main/res/values/setup.xml
  7. if [[ $2 = "true" ]]; then
  8. record="-Precord"
  9. else
  10. record=""
  11. fi
  12. classMethod=$3
  13. resultCode=0
  14. grep -v "#" scripts/screenshotCombinations | while read line
  15. do
  16. darkMode=$(echo "$line" | cut -d" " -f1)
  17. color=$(echo "$line" | cut -d" " -f2)
  18. echo -n "Run $color on $darkMode mode"
  19. if [[ $1 = "noCI" ]]; then
  20. ./gradlew --console plain gplayDebugExecuteScreenshotTests \
  21. $record \
  22. -Pscreenshot=true \
  23. -Pandroid.testInstrumentationRunnerArguments.annotation=com.owncloud.android.utils.ScreenshotTest \
  24. -Pandroid.testInstrumentationRunnerArguments.COLOR="$color" \
  25. -Pandroid.testInstrumentationRunnerArguments.DARKMODE="$darkMode" \
  26. $classMethod </dev/null > /dev/null
  27. if [[ $? -ne 0 ]]; then
  28. echo " failed!"
  29. else
  30. echo
  31. fi
  32. else
  33. ./gradlew --console plain gplayDebugExecuteScreenshotTests \
  34. $record \
  35. -Pandroid.testInstrumentationRunnerArguments.annotation=com.owncloud.android.utils.ScreenshotTest \
  36. -Pandroid.testInstrumentationRunnerArguments.COLOR="$color" \
  37. -Pandroid.testInstrumentationRunnerArguments.DARKMODE="$darkMode" </dev/null > /dev/null \
  38. && scripts/deleteOldComments.sh "$1-$darkMode-$color" "Screenshot" "$4" \
  39. || resultCode=1 && scripts/uploadReport.sh "$LOG_USERNAME" "$LOG_PASSWORD" "$4" \
  40. "$1-$darkMode-$color" "Screenshot" "$4"
  41. fi
  42. done
  43. sed -i s'#<bool name="is_beta">true</bool>#<bool name="is_beta">false</bool>#'g app/src/main/res/values/setup.xml
  44. exit $resultCode