group 'dev.flutter.packages.interactive_media_ads'
version '1.0-SNAPSHOT'

buildscript {
    ext.kotlin_version = '2.1.10'
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:8.9.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'

android {
    namespace 'dev.flutter.packages.interactive_media_ads'

    compileSdk = flutter.compileSdkVersion

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_11
        targetCompatibility JavaVersion.VERSION_11
    }

    kotlinOptions {
        jvmTarget = '11'
    }

    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
        test.java.srcDirs += 'src/test/kotlin'
    }

    defaultConfig {
        minSdk 21
    }

    dependencies {
        implementation 'androidx.annotation:annotation:1.9.1'
        implementation 'androidx.core:core-ktx:1.13.0'
        implementation 'com.google.ads.interactivemedia.v3:interactivemedia:3.36.0'
        testImplementation 'junit:junit:4.13.2'
        testImplementation 'org.jetbrains.kotlin:kotlin-test'
        testImplementation "org.mockito.kotlin:mockito-kotlin:5.4.0"
        testImplementation 'org.mockito:mockito-inline:5.2.0'
        testImplementation 'androidx.test:core:1.6.1'
    }

    lintOptions {
        checkAllWarnings true
        warningsAsErrors true
        disable 'AndroidGradlePluginVersion', 'InvalidPackage', 'GradleDependency', 'NewerVersionAvailable'
    }

    testOptions {
        unitTests.includeAndroidResources = true
        unitTests.returnDefaultValues = true
        unitTests.all {
            useJUnitPlatform()
            testLogging {
                events "passed", "skipped", "failed", "standardOut", "standardError"
                outputs.upToDateWhen {false}
                showStandardStreams = true
            }
        }
    }
}