aboutsummaryrefslogtreecommitdiff
path: root/tests/artifactApi/build.gradle
diff options
context:
space:
mode:
Diffstat (limited to 'tests/artifactApi/build.gradle')
-rw-r--r--tests/artifactApi/build.gradle105
1 files changed, 105 insertions, 0 deletions
diff --git a/tests/artifactApi/build.gradle b/tests/artifactApi/build.gradle
new file mode 100644
index 0000000..be18382
--- /dev/null
+++ b/tests/artifactApi/build.gradle
@@ -0,0 +1,105 @@
+buildscript {
+ repositories {
+ maven { url '../../../../out/host/gradle/repo' }
+ }
+ dependencies {
+ classpath 'com.android.tools.build:gradle:0.7.0-SNAPSHOT'
+ }
+}
+
+apply plugin: 'android'
+
+import com.android.builder.model.ArtifactMetaData
+import com.android.builder.model.SourceProvider
+
+android.registerArtifactType("__test__", false, ArtifactMetaData.TYPE_JAVA)
+
+android.buildTypes.all { type ->
+ project.android.registerBuildTypeSourceProvider("__test__", type, getProvider("buildType:$type.name"))
+}
+
+android.productFlavors.all { flavor ->
+ project.android.registerProductFlavorSourceProvider("__test__", flavor, getProvider("productFlavor:$flavor.name"))
+}
+
+android.applicationVariants.all { variant ->
+ project.android.registerJavaArtifact(
+ "__test__",
+ variant,
+ "assemble:$variant.name",
+ "compile:$variant.name",
+ new File("classesFolder:$variant.name"),
+ getProvider("provider:$variant.name"))
+}
+
+android {
+ compileSdkVersion 15
+ buildToolsVersion "18.0.1"
+
+ flavorGroups "pricing", "releaseType"
+
+ productFlavors {
+
+ beta {
+ flavorGroup "releaseType"
+ }
+
+ normal {
+ flavorGroup "releaseType"
+ }
+
+ free {
+ flavorGroup "pricing"
+ }
+
+ paid {
+ flavorGroup "pricing"
+ }
+ }
+}
+
+public class SourceProviderImpl implements SourceProvider, Serializable {
+ private static final long serialVersionUID = 1L;
+
+ private final String name;
+
+ SourceProviderImpl(String name) {
+ this.name = name
+ }
+
+ File getManifestFile() {
+ return new File(name)
+ }
+
+ Collection<File> getJavaDirectories() {
+ return Collections.emptyList()
+ }
+
+ Collection<File> getResourcesDirectories() {
+ return Collections.emptyList()
+ }
+
+ Collection<File> getAidlDirectories() {
+ return Collections.emptyList()
+ }
+
+ Collection<File> getRenderscriptDirectories() {
+ return Collections.emptyList()
+ }
+
+ Collection<File> getJniDirectories() {
+ return Collections.emptyList()
+ }
+
+ Collection<File> getResDirectories() {
+ return Collections.emptyList()
+ }
+
+ Collection<File> getAssetsDirectories() {
+ return Collections.emptyList()
+ }
+}
+
+SourceProvider getProvider(String name) {
+ return new SourceProviderImpl(name)
+} \ No newline at end of file