summaryrefslogtreecommitdiff
path: root/android/testData/templates
diff options
context:
space:
mode:
authorJosiah Gaskin <josiahgaskin@google.com>2014-03-26 16:42:44 -0700
committerJosiah Gaskin <josiahgaskin@google.com>2014-04-15 18:46:02 -0700
commit8fad8aa0a71548f85249b0809053091055300b42 (patch)
treebc3a7ff8c5ec06d1ccc5504ea2c47e0aaa16a246 /android/testData/templates
parentdab4863c82d7dfc80b286ad441b425ee7170c048 (diff)
downloadidea-8fad8aa0a71548f85249b0809053091055300b42.tar.gz
Support Gradle Merging
This change adds support for merging Gradle files by PSI tree. The merger will walk the tree and look for matching nodes, creating nodes if they exist in the given source file but not in the given destination. Change-Id: I41040c3539449b056c99b6b6dd805b668a11ef94
Diffstat (limited to 'android/testData/templates')
-rw-r--r--android/testData/templates/Base.gradle34
-rw-r--r--android/testData/templates/MergedNewBuildType.gradle38
-rw-r--r--android/testData/templates/MergedNewDependencies.gradle37
-rw-r--r--android/testData/templates/MergedNewFlavor.gradle37
-rw-r--r--android/testData/templates/MergedRemapFlavorAssetDir.gradle35
-rw-r--r--android/testData/templates/NewBuildType.gradle8
-rw-r--r--android/testData/templates/NewDependencies.gradle4
-rw-r--r--android/testData/templates/NewFlavor.gradle7
-rw-r--r--android/testData/templates/RemapFlavorAssetDir.gradle10
9 files changed, 210 insertions, 0 deletions
diff --git a/android/testData/templates/Base.gradle b/android/testData/templates/Base.gradle
new file mode 100644
index 00000000000..6161a5ce0e8
--- /dev/null
+++ b/android/testData/templates/Base.gradle
@@ -0,0 +1,34 @@
+apply plugin: 'android'
+
+android {
+ compileSdkVersion 19
+ buildToolsVersion "19.0.1"
+
+ defaultConfig {
+ minSdkVersion 8
+ targetSdkVersion 19
+ versionCode 1
+ versionName "1.0"
+ }
+ buildTypes {
+ release {
+ runProguard false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+ productFlavors {
+ basic {
+ packageName "com.example.projectwithappandlib.app"
+ }
+ paid {
+ packageName "com.example.projectwithappandlib.app.paid"
+ assets.srcDirs = ['paid-assets']
+ }
+ }
+}
+
+dependencies {
+ compile 'com.android.support:appcompat-v7:+'
+ // TODO: Include *.aar once it's supported in the plugin
+ compile fileTree(dir: 'libs', include: ['*.jar'])
+}
diff --git a/android/testData/templates/MergedNewBuildType.gradle b/android/testData/templates/MergedNewBuildType.gradle
new file mode 100644
index 00000000000..09a555a4e01
--- /dev/null
+++ b/android/testData/templates/MergedNewBuildType.gradle
@@ -0,0 +1,38 @@
+apply plugin: 'android'
+
+android {
+ compileSdkVersion 19
+ buildToolsVersion "19.0.1"
+
+ defaultConfig {
+ minSdkVersion 8
+ targetSdkVersion 19
+ versionCode 1
+ versionName "1.0"
+ }
+ buildTypes {
+ release {
+ runProguard false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ debug {
+ runProguard false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules-debug.txt'
+ }
+ }
+ productFlavors {
+ basic {
+ packageName "com.example.projectwithappandlib.app"
+ }
+ paid {
+ packageName "com.example.projectwithappandlib.app.paid"
+ assets.srcDirs = ['paid-assets']
+ }
+ }
+}
+
+dependencies {
+ compile 'com.android.support:appcompat-v7:+'
+ // TODO: Include *.aar once it's supported in the plugin
+ compile fileTree(dir: 'libs', include: ['*.jar'])
+}
diff --git a/android/testData/templates/MergedNewDependencies.gradle b/android/testData/templates/MergedNewDependencies.gradle
new file mode 100644
index 00000000000..295b9e7281c
--- /dev/null
+++ b/android/testData/templates/MergedNewDependencies.gradle
@@ -0,0 +1,37 @@
+apply plugin: 'android'
+
+android {
+ compileSdkVersion 19
+ buildToolsVersion "19.0.1"
+
+ defaultConfig {
+ minSdkVersion 8
+ targetSdkVersion 19
+ versionCode 1
+ versionName "1.0"
+ }
+ buildTypes {
+ release {
+ runProguard false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+ productFlavors {
+ basic {
+ packageName "com.example.projectwithappandlib.app"
+ }
+ paid {
+ packageName "com.example.projectwithappandlib.app.paid"
+ assets.srcDirs = ['paid-assets']
+ }
+ }
+}
+
+dependencies {
+ // TODO: Include *.aar once it's supported in the plugin
+ compile fileTree(dir: 'libs', include: ['*.jar'])
+ // You must install or update the Support Repository through the SDK manager to use this dependency.
+ compile 'com.android.support:appcompat-v7:+'
+ // You must install or update the Support Repository through the SDK manager to use this dependency.
+ compile 'com.android.support:support-v4:18.0.+'
+}
diff --git a/android/testData/templates/MergedNewFlavor.gradle b/android/testData/templates/MergedNewFlavor.gradle
new file mode 100644
index 00000000000..9a8efabaed6
--- /dev/null
+++ b/android/testData/templates/MergedNewFlavor.gradle
@@ -0,0 +1,37 @@
+apply plugin: 'android'
+
+android {
+ compileSdkVersion 19
+ buildToolsVersion "19.0.1"
+
+ defaultConfig {
+ minSdkVersion 8
+ targetSdkVersion 19
+ versionCode 1
+ versionName "1.0"
+ }
+ buildTypes {
+ release {
+ runProguard false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+ productFlavors {
+ basic {
+ packageName "com.example.projectwithappandlib.app"
+ }
+ paid {
+ packageName "com.example.projectwithappandlib.app.paid"
+ assets.srcDirs = ['paid-assets']
+ }
+ newFlavor {
+ packageName "com.example.projectwithappandlib.app.newflavor"
+ }
+ }
+}
+
+dependencies {
+ compile 'com.android.support:appcompat-v7:+'
+ // TODO: Include *.aar once it's supported in the plugin
+ compile fileTree(dir: 'libs', include: ['*.jar'])
+}
diff --git a/android/testData/templates/MergedRemapFlavorAssetDir.gradle b/android/testData/templates/MergedRemapFlavorAssetDir.gradle
new file mode 100644
index 00000000000..85188b22e6c
--- /dev/null
+++ b/android/testData/templates/MergedRemapFlavorAssetDir.gradle
@@ -0,0 +1,35 @@
+apply plugin: 'android'
+
+android {
+ compileSdkVersion 19
+ buildToolsVersion "19.0.1"
+
+ defaultConfig {
+ minSdkVersion 8
+ targetSdkVersion 19
+ versionCode 1
+ versionName "1.0"
+ }
+ buildTypes {
+ release {
+ runProguard false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+ productFlavors {
+ basic {
+ packageName "com.example.projectwithappandlib.app"
+ assets.srcDirs = ['bundled-assets']
+ }
+ paid {
+ packageName "com.example.projectwithappandlib.app.paid"
+ assets.srcDirs = ['paid-assets', 'bundled-assets']
+ }
+ }
+}
+
+dependencies {
+ compile 'com.android.support:appcompat-v7:+'
+ // TODO: Include *.aar once it's supported in the plugin
+ compile fileTree(dir: 'libs', include: ['*.jar'])
+}
diff --git a/android/testData/templates/NewBuildType.gradle b/android/testData/templates/NewBuildType.gradle
new file mode 100644
index 00000000000..fab23bc02fd
--- /dev/null
+++ b/android/testData/templates/NewBuildType.gradle
@@ -0,0 +1,8 @@
+android {
+ buildTypes {
+ debug {
+ runProguard false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules-debug.txt'
+ }
+ }
+} \ No newline at end of file
diff --git a/android/testData/templates/NewDependencies.gradle b/android/testData/templates/NewDependencies.gradle
new file mode 100644
index 00000000000..463482a0d53
--- /dev/null
+++ b/android/testData/templates/NewDependencies.gradle
@@ -0,0 +1,4 @@
+dependencies {
+ compile 'com.android.support:support-v4:18.0.+'
+ compile 'com.android.support:appcompat-v7:+'
+}
diff --git a/android/testData/templates/NewFlavor.gradle b/android/testData/templates/NewFlavor.gradle
new file mode 100644
index 00000000000..ed49f54fe4b
--- /dev/null
+++ b/android/testData/templates/NewFlavor.gradle
@@ -0,0 +1,7 @@
+android {
+ productFlavors {
+ newFlavor {
+ packageName "com.example.projectwithappandlib.app.newflavor"
+ }
+ }
+} \ No newline at end of file
diff --git a/android/testData/templates/RemapFlavorAssetDir.gradle b/android/testData/templates/RemapFlavorAssetDir.gradle
new file mode 100644
index 00000000000..87fb05f524e
--- /dev/null
+++ b/android/testData/templates/RemapFlavorAssetDir.gradle
@@ -0,0 +1,10 @@
+android {
+ productFlavors {
+ basic {
+ assets.srcDirs = ['bundled-assets']
+ }
+ paid {
+ assets.srcDirs = ['paid-assets', 'bundled-assets']
+ }
+ }
+} \ No newline at end of file