runAllScreenshotCombinations 2.1 KB

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