/*
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

buildscript {
  apply from: rootProject.file('versions.gradle')
  repositories {
    mavenLocal()
    jcenter()
    google()
  }

  dependencies {
    classpath plugs.agp
    classpath plugs.screenshot
    classpath plugs.kotlin
  }
}

allprojects {
  repositories {
    mavenLocal()
    jcenter()
    google()
  }
}

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
apply plugin: 'com.facebook.testing.screenshot'

android {
  compileSdkVersion versions.compileSdk
  defaultConfig {
    applicationId "com.facebook.testing.screenshot.example"
    minSdkVersion 15
    targetSdkVersion versions.targetSdk
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "com.facebook.testing.screenshot.sample.ScreenshotTestRunner"
    testInstrumentationRunnerArguments clearPackageData: 'true'
  }
  testOptions {
    execution 'ANDROIDX_TEST_ORCHESTRATOR'
  }
}

dependencies {
  implementation deps.kotlinStdlib

  implementation deps.supportAppCompat
  implementation deps.supportDesign

  implementation deps.lithoCore
  implementation deps.lithoWidget
  implementation deps.lithoAnnotations
  kapt deps.lithoProcessor

  implementation deps.soLoader

  androidTestImplementation deps.screenshotTestCommon
  androidTestImplementation deps.screenshotTestLitho
  androidTestImplementation deps.junit
  androidTestImplementation deps.testRunner
  androidTestUtil deps.orchestrator
  androidTestImplementation(deps.espresso) {
    exclude group: 'com.android.support', module: 'support-annotations'
    exclude group: 'com.google.code.findbugs', module: 'jsr305'
  }
  androidTestImplementation deps.androidTestRules
}

screenshots {
  multipleDevices true
  pythonExecutable 'python3'
}
