summaryrefslogtreecommitdiff
path: root/java-compat/android/test/controller/build.gradle
blob: 94f736b4db2a00eb46002a28079aeaef3aa43e26 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// **********************************************************************
//
// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
//
// This copy of Ice is licensed to you under the terms described in the
// ICE_LICENSE file included in this distribution.
//
// **********************************************************************

apply plugin: 'com.android.application'
apply from: "$project.ext.topSrcDir/java/gradle/ice.gradle"
slice.compat = true
apply from: "$rootProject.projectDir/gradle/tests.gradle"

slice {
    java {
        files = fileTree(dir: "$project.ext.topSrcDir/scripts/", includes: ['*.ice'])
    }
}

android {
    compileSdkVersion ice_compileSdkVersion.toInteger()
    buildToolsVersion ice_buildToolsVersion

    defaultConfig {
        applicationId "com.zeroc.testcontroller"
        minSdkVersion ice_minSdkVersion.toInteger()
        targetSdkVersion ice_targetSdkVersion.toInteger()
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_7
            targetCompatibility JavaVersion.VERSION_1_7
        }
    }

    buildTypes {
        debug {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard.cfg'
        }

        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard.cfg'
        }
    }
    buildToolsVersion '25.0.3'
}

idea.module {
    excludeDirs -= file(buildDir)
    buildDir.listFiles({d, f ->f != 'generated-src'} as FilenameFilter).each { excludeDirs += it }
}

tests.each {
    def name = it.replace("/", "_")
    def taskName = "copyTask-${name}"
    def testName = ":test_${name}"
    def dexName = "test_${name}.dex"
    task "${taskName}"(type: Copy, dependsOn: "${testName}:dexClasses") {
        from "${rootProject.projectDir}/test/src/test_${name}/build/classes/java/main/${dexName}"
        into "src/main/assets"
    }
    preBuild.dependsOn(tasks[taskName])

    clean {
        delete("src/main/assets/${dexName}")
    }
}

task copyBksTask(type: Copy) {
    from "${project.ext.topSrcDir}/certs/client.bks"
    from "${project.ext.topSrcDir}/certs/server.bks"
    into "src/main/res/raw"
}
preBuild.dependsOn(copyBksTask)

clean {
    delete("src/main/res/raw/client.bks")
    delete("src/main/res/raw/server.bks")
}

dependencies {
    compile localDependency('ice-compat')
    compile localDependency('icediscovery-compat')
    compile localDependency('icebt-compat')
    compile project(':test')
}