epfl-SDP/android

View on GitHub
.cirrus.yml

Summary

Maintainability
Test Coverage
check_android_task:
  name: Run Android tests
  env:
    API_LEVEL: 30
    TARGET: google_apis
    ARCH: x86

    # Secrets
    GITHUB_USERNAME: ENCRYPTED[!5ddd4ecee2227269ff560d6ce26215913f9754243998b12f20b3b05159bcc24437b84b1c20b37fa6d01104654c43c8f4!]
    GITHUB_TOKEN: ENCRYPTED[!b59c57ebdfbe387579b505c3eda03ceafb19b63d956ace5f92cc96cdb920b306a161bb6327dfc7174df2823d99917aab!]
    CC_TEST_REPORTER_ID: ENCRYPTED[!05ea6f074a05caf1372148aa23d1a738111a0e2729b0ee10a426371e065209dc6d811b58bea1b4e43be227be989d957d!]
    GOOGLE_SERVICES: ENCRYPTED[6cd1019da7730267ee1ed6ab5d812d8cb8fc97ab11a43f2bb19ce15b6806b285dd5e7d30ce50d913b16a7f18a6448045]
  container:
    image: reactivecircus/android-emulator-$API_LEVEL:latest
    kvm: true
    cpu: 8
    memory: 10G
  create_device_script:
    echo no | avdmanager create avd --force --name test --abi "$TARGET/$ARCH" --package "system-images;android-$API_LEVEL;$TARGET;$ARCH"
  start_emulator_background_script:
    $ANDROID_SDK_ROOT/emulator/emulator -avd test -no-window -gpu swiftshader_indirect -no-snapshot -no-audio -no-boot-anim -camera-back none
  prepare_environment_script: |
    sh ./.cirrus/populate_properties.sh
  build_script: |
    chmod +x gradlew
    ./gradlew assembleDebugAndroidTest
  wait_for_emulator_script: |
    adb wait-for-device
    adb shell input keyevent 82
  disable_animations_script: |
    adb shell settings put global window_animation_scale 0.0
    adb shell settings put global transition_animation_scale 0.0
    adb shell settings put global animator_duration_scale 0.0
  prepare_codeclimate_script: |
    curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
    chmod +x ./cc-test-reporter
    ./cc-test-reporter before-build
  check_script:
    ./gradlew check connectedCheck
  report_codeclimate_script: |
    export JACOCO_SOURCE_PATH=mobile/src/main/java/
    ./cc-test-reporter format-coverage ./mobile/build/reports/jacoco/jacocoTestReport/jacocoTestReport.xml --input-type jacoco
    ./cc-test-reporter upload-coverage
  lint_script:
    ./gradlew lintDebug
  always:
    android-lint_artifacts:
      path: ./mobile/build/reports/lint-results-debug.xml
      type: text/xml
      format: android-lint