summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Prigogin <sprigogin@google.com>2019-06-17 17:04:25 -0700
committerSergey Prigogin <sprigogin@google.com>2019-06-19 15:50:39 +0000
commit80ab857c6c59e2c4e9e57c810147f6680d93a114 (patch)
tree30ca76bb75f7d9dc760c79c4383d783ee07d21b7
parentd6d82807bd4b820de962a851e9649de1b5b7fe3d (diff)
downloadidea-80ab857c6c59e2c4e9e57c810147f6680d93a114.tar.gz
Add framework_res.jar to prebuilts
Test: FrameworkResJarTest Bug: N/A Change-Id: I2e81bbbeaf18ac088b96d1af9bdf4030593c174c
-rw-r--r--android-kotlin/BUILD2
-rw-r--r--android-kotlin/idea-android/tests/org/jetbrains/kotlin/android/KotlinAndroidTestSuite.kt3
-rw-r--r--android-uitests/BUILD84
-rw-r--r--android-uitests/testSrc/com/android/tools/idea/tests/gui/GuiJarTestSuite.java1
-rw-r--r--android/BUILD3
-rw-r--r--android/src/org/jetbrains/android/sdk/StudioEmbeddedRenderTarget.java44
-rw-r--r--android/testSrc/com/android/tools/idea/IdeaTestSuite.java1
-rw-r--r--designer/BUILD2
-rw-r--r--designer/testSrc/com/android/tools/idea/DesignerTestSuite.java1
-rw-r--r--layoutlib/BUILD2
-rw-r--r--naveditor/BUILD2
-rw-r--r--naveditor/testSrc/com/android/tools/idea/naveditor/NavEditorTestSuite.java3
-rw-r--r--resources-aar/BUILD2
-rw-r--r--resources-aar/src/com/android/tools/idea/resources/aar/FrameworkResJarCreator.java44
-rw-r--r--resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResJarTest.java133
-rw-r--r--resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResourceRepositoryTest.java61
-rw-r--r--resources-aar/testSrc/com/android/tools/idea/resources/aar/ResourcesAarTestSuite.java3
17 files changed, 240 insertions, 151 deletions
diff --git a/android-kotlin/BUILD b/android-kotlin/BUILD
index 7bce8ab8823..b977e38912e 100644
--- a/android-kotlin/BUILD
+++ b/android-kotlin/BUILD
@@ -126,10 +126,10 @@ iml_module(
# keep sorted
test_data = [
":testData",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/studio/sdk:platforms/latest",
"//prebuilts/tools/common/kotlin-plugin:kotlinc-files",
"//tools/adt/idea/android/annotations",
- "//tools/adt/idea/resources-aar:framework_res",
"//tools/idea:platform-build-info",
],
# do not sort: must match IML order
diff --git a/android-kotlin/idea-android/tests/org/jetbrains/kotlin/android/KotlinAndroidTestSuite.kt b/android-kotlin/idea-android/tests/org/jetbrains/kotlin/android/KotlinAndroidTestSuite.kt
index 7acb1245ea8..13fd5a983f3 100644
--- a/android-kotlin/idea-android/tests/org/jetbrains/kotlin/android/KotlinAndroidTestSuite.kt
+++ b/android-kotlin/idea-android/tests/org/jetbrains/kotlin/android/KotlinAndroidTestSuite.kt
@@ -28,8 +28,7 @@ class KotlinAndroidTestSuite : IdeaTestSuiteBase() {
IdeaTestSuiteBase.symlinkToIdeaHome(
"prebuilts/studio/layoutlib",
"tools/adt/idea/android/annotations",
- "tools/adt/idea/android/lib",
- "tools/adt/idea/resources-aar/framework_res.jar")
+ "tools/adt/idea/android/lib")
IdeaTestSuiteBase.symlinkToIdeaHome(
"tools/adt/idea/android-kotlin/android-extensions-idea/testData",
diff --git a/android-uitests/BUILD b/android-uitests/BUILD
index cddfd3677be..91c699f665c 100644
--- a/android-uitests/BUILD
+++ b/android-uitests/BUILD
@@ -131,7 +131,7 @@ java_test(
name = "ResolveXmlReferencesTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/data-binding:data_binding_runtime.zip",
] + glob([
"testData/DatabindingMethodsTest/**",
@@ -146,7 +146,7 @@ java_test(
name = "NewProjectTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.uibuilder.NewProjectTest"],
tags = COMMON_TAGS + ["manual"], #sanity test passing, but latestSupportLibraryWhileDndLayouts failed for UI reason
@@ -158,7 +158,7 @@ java_test(
name = "NewActivityTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -173,9 +173,9 @@ java_test(
size = "large",
data = COMMON_DATA + [
# TODO: Remove the dependency on support-annotations once Bazel no longer requires support-annotations to build Android apps.
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/studio/sdk:tools/support-annotations",
"//prebuilts/tools/common/m2/repository/com/android/support/appcompat-v7/26.1.0:aar",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleApplication/**",
]) + glob(["testData/LayoutTest/**"]),
@@ -189,7 +189,7 @@ java_test(
name = "ConstraintLayoutTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/SimpleApplication/**",
"testData/LayoutTest/**",
@@ -204,7 +204,7 @@ java_test(
name = "GradleSyncTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -218,7 +218,7 @@ java_test(
name = "NewModuleTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/SimpleApplication/**",
"testData/LocalJarsAsModules/**",
@@ -234,7 +234,7 @@ java_test(
name = "BuildTypesTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -249,7 +249,7 @@ java_test(
name = "LayoutInspectorTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/SimpleApplication/**",
"testData/LayoutInspector/**",
@@ -267,7 +267,7 @@ java_test(
name = "ConvertToWebpActionTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/ImportLocalWebpProject/**",
]),
@@ -280,7 +280,7 @@ java_test(
java_test(
name = "FilterIconTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -342,7 +342,7 @@ java_test(
java_test(
name = "CreateDefaultActivityTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -471,8 +471,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/LayoutTest/**",
]),
@@ -492,8 +492,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/LayoutTest/**",
]),
@@ -513,8 +513,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -534,8 +534,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleFlavoredApplication/**",
]),
@@ -605,7 +605,7 @@ java_test(
name = "CreateBasicKotlinProjectTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = [
"-Dtest.suite.class=com.android.tools.idea.tests.gui.kotlin.CreateBasicKotlinProjectTest",
@@ -623,7 +623,7 @@ java_test(
name = "AddRemoveCppDependencyTest",
size = "large",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = [
"-Dtest.suite.class=com.android.tools.idea.tests.gui.npw.AddRemoveCppDependencyTest",
@@ -640,7 +640,7 @@ java_test(
java_test(
name = "CreateNewProjectWithCpp1Test",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.npw.CreateNewProjectWithCpp1Test"],
tags = COMMON_TAGS + [
@@ -655,7 +655,7 @@ java_test(
java_test(
name = "CreateNewProjectWithCpp2Test",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.npw.CreateNewProjectWithCpp2Test"],
tags = COMMON_TAGS + [
@@ -670,7 +670,7 @@ java_test(
java_test(
name = "CreateNewProjectWithCpp3Test",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.npw.CreateNewProjectWithCpp3Test"],
tags = COMMON_TAGS + [
@@ -685,7 +685,7 @@ java_test(
java_test(
name = "CreateNewMobileProjectTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.uibuilder.CreateNewMobileProjectTest"],
tags = COMMON_TAGS + [
@@ -701,7 +701,7 @@ java_test(
java_test(
name = "CreateCppKotlinProjectTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/CppKotlin/**",
]),
@@ -1068,7 +1068,7 @@ java_test(
java_test(
name = "JavaLibsDepTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.projectstructure.JavaLibsDepTest"],
tags = COMMON_TAGS + [
@@ -1084,7 +1084,7 @@ java_test(
java_test(
name = "AndroidLibsDepTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.projectstructure.AndroidLibsDepTest"],
tags = COMMON_TAGS + [
@@ -1100,8 +1100,8 @@ java_test(
java_test(
name = "JavaDepTest",
data = COMMON_DATA + [
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/tools/common/m2/repository/com/google/code/gson/gson/2.6.2:jar",
- "//tools/adt/idea/resources-aar:framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.projectstructure.JavaDepTest"],
tags = COMMON_TAGS + [
@@ -1117,8 +1117,8 @@ java_test(
java_test(
name = "AndroidDepTest",
data = COMMON_DATA + [
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/tools/common/m2/repository/com/google/code/gson/gson/2.6.2:jar",
- "//tools/adt/idea/resources-aar:framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.projectstructure.AndroidDepTest"],
tags = COMMON_TAGS + [
@@ -1149,7 +1149,7 @@ java_test(
java_test(
name = "PrivateResourceTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/PrivateResource/**",
]),
@@ -1167,7 +1167,7 @@ java_test(
java_test(
name = "ChangeLibModSettingsTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/PrivateResource/**",
]),
@@ -1185,7 +1185,7 @@ java_test(
java_test(
name = "NameWithSpaceTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
jvm_flags = ["-Dtest.suite.class=com.android.tools.idea.tests.gui.uibuilder.NameWithSpaceTest"],
tags = COMMON_TAGS + [
@@ -1203,11 +1203,11 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/studio/sdk:platforms/android-23",
"//prebuilts/studio/sdk:platforms/android-24",
"//prebuilts/studio/sdk:platforms/android-25",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/LayoutTest/**",
]),
@@ -1227,9 +1227,9 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/studio/sdk:platforms/android-25",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -1249,8 +1249,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/LayoutTest/**",
]),
@@ -1270,8 +1270,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/LayoutTest/**",
]),
@@ -1291,8 +1291,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/LayoutTest/**",
]),
@@ -1312,8 +1312,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/LayoutTest/**",
]),
@@ -1332,8 +1332,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -1352,8 +1352,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -1373,8 +1373,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
@@ -1394,8 +1394,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleApplication/**",
"testData/TestImages/**",
@@ -1479,7 +1479,7 @@ java_test(
java_test(
name = "LintCheckWithKotlinTest",
data = COMMON_DATA + [
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
] + glob([
"testData/KotlinInstrumentation/**",
]),
@@ -1588,8 +1588,8 @@ java_test(
data = COMMON_DATA + [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/lib:androidWidgets",
- "//tools/adt/idea/resources-aar:framework_res",
] + glob([
"testData/SimpleApplication/**",
]),
diff --git a/android-uitests/testSrc/com/android/tools/idea/tests/gui/GuiJarTestSuite.java b/android-uitests/testSrc/com/android/tools/idea/tests/gui/GuiJarTestSuite.java
index 223159bb2bd..daba5b67d2b 100644
--- a/android-uitests/testSrc/com/android/tools/idea/tests/gui/GuiJarTestSuite.java
+++ b/android-uitests/testSrc/com/android/tools/idea/tests/gui/GuiJarTestSuite.java
@@ -47,7 +47,6 @@ public class GuiJarTestSuite extends IdeaTestSuiteBase {
"tools/adt/idea/android/lib",
"tools/adt/idea/android-uitests/testData",
"tools/adt/idea/artwork/resources/device-art-resources",
- "tools/adt/idea/resources-aar/framework_res.jar",
"tools/base/templates",
"tools/external/gradle",
"tools/idea/java",
diff --git a/android/BUILD b/android/BUILD
index 676b3e96141..907b24b19b2 100644
--- a/android/BUILD
+++ b/android/BUILD
@@ -157,6 +157,7 @@ iml_module(
"//prebuilts/studio/jdk",
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/studio/sdk:build-tools/latest",
"//prebuilts/studio/sdk:cmake",
"//prebuilts/studio/sdk:docs",
@@ -174,7 +175,6 @@ iml_module(
"//tools/adt/idea/android/lib:sampleData",
"//tools/adt/idea/android/testData",
"//tools/adt/idea/artwork:device-art-resources",
- "//tools/adt/idea/resources-aar:framework_res",
"//tools/base/build-system:gradle-distrib",
"//tools/base/build-system:studio_repo.zip",
"//tools/base/build-system/previous-versions:1.5.0.zip",
@@ -366,7 +366,6 @@ filegroup(
":deploy-artifacts",
":profiler-artifacts",
":transport-artifacts",
- "//tools/adt/idea/resources-aar:framework_res.jar",
"//tools/adt/idea/swingp:swing-instrumenter_deploy.jarjar.jar",
"//tools/adt/idea/uitest-framework/testSrc/com/android/tools/idea/tests/gui/framework/heapassertions/bleak/agents:ObjectSizeInstrumentationAgent_deploy.jar",
"//tools/adt/idea/uitest-framework/testSrc/com/android/tools/idea/tests/gui/framework/heapassertions/bleak/agents:jnibleakhelper",
diff --git a/android/src/org/jetbrains/android/sdk/StudioEmbeddedRenderTarget.java b/android/src/org/jetbrains/android/sdk/StudioEmbeddedRenderTarget.java
index de603ac5b88..8277de111b8 100644
--- a/android/src/org/jetbrains/android/sdk/StudioEmbeddedRenderTarget.java
+++ b/android/src/org/jetbrains/android/sdk/StudioEmbeddedRenderTarget.java
@@ -33,9 +33,6 @@ import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import java.io.File;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
import java.util.List;
import java.util.Map;
import org.jetbrains.annotations.NotNull;
@@ -47,6 +44,7 @@ import org.jetbrains.annotations.Nullable;
public class StudioEmbeddedRenderTarget implements IAndroidTarget {
private static final Logger LOG = Logger.getInstance(StudioEmbeddedRenderTarget.class);
private static final String ONLY_FOR_RENDERING_ERROR = "This target is only for rendering";
+ private static final String FRAMEWORK_RES_JAR = "framework_res.jar";
// Possible paths of the embedded "layoutlib" directory.
private static final String[] EMBEDDED_LAYOUTLIB_PATHS = {
@@ -59,18 +57,8 @@ public class StudioEmbeddedRenderTarget implements IAndroidTarget {
// IDEA community path.
"/android/tools-base/layoutlib/"
};
- // Possible paths of framework_res.jar relative to the "layoutlib" directory.
- private static final String[] EMBEDDED_FRAMEWORK_RES_JAR_PATHS = {
- // Bundled path.
- "data/framework_res.jar",
- // Path when running in IntelliJ.
- "../../../bazel-genfiles/tools/adt/idea/resources-aar/framework_res.jar",
- };
- // Path of framework_res.jar relative to the runfiles directory when running in Bazel.
- private static final String EMBEDDED_FRAMEWORK_RES_JAR_BAZEL_PATH = "tools/adt/idea/resources-aar/framework_res.jar";
@Nullable private final String myBasePath;
- @Nullable private final String myFrameworkResPath;
private static StudioEmbeddedRenderTarget ourStudioEmbeddedTarget;
private static boolean ourDisableEmbeddedTargetForTesting = false;
@@ -105,7 +93,8 @@ public class StudioEmbeddedRenderTarget implements IAndroidTarget {
return new CompatibilityRenderTarget(getInstance(), api, target);
}
- private static StudioEmbeddedRenderTarget getInstance() {
+ @VisibleForTesting
+ public static StudioEmbeddedRenderTarget getInstance() {
if (ourStudioEmbeddedTarget == null) {
ourStudioEmbeddedTarget = new StudioEmbeddedRenderTarget();
}
@@ -114,7 +103,6 @@ public class StudioEmbeddedRenderTarget implements IAndroidTarget {
private StudioEmbeddedRenderTarget() {
myBasePath = getEmbeddedLayoutLibPath();
- myFrameworkResPath = getEmbeddedFrameworkResPath(myBasePath);
}
/**
@@ -145,29 +133,6 @@ public class StudioEmbeddedRenderTarget implements IAndroidTarget {
return null;
}
- /**
- * Returns the URL for the embedded layoutlib distribution.
- * @param basePath
- */
- @Nullable
- private static String getEmbeddedFrameworkResPath(@Nullable String basePath) {
- if (basePath == null) {
- return null;
- }
-
- for (String relativePath : EMBEDDED_FRAMEWORK_RES_JAR_PATHS) {
- Path path = Paths.get(basePath, relativePath).normalize();
- if (Files.exists(path)) {
- return path.toString();
- }
- }
- Path path = Paths.get(EMBEDDED_FRAMEWORK_RES_JAR_BAZEL_PATH).toAbsolutePath().normalize();
- if (Files.exists(path)) {
- return path.toString();
- }
- return null;
- }
-
@Override
@NotNull
public String getLocation() {
@@ -216,8 +181,7 @@ public class StudioEmbeddedRenderTarget implements IAndroidTarget {
case DATA:
return getLocation() + SdkConstants.OS_PLATFORM_DATA_FOLDER;
case RESOURCES:
- Preconditions.checkState(myFrameworkResPath != null, "Embedded framework_res.jar not found");
- return myFrameworkResPath;
+ return getLocation() + SdkConstants.OS_PLATFORM_DATA_FOLDER + FRAMEWORK_RES_JAR;
case FONTS:
return getLocation() + SdkConstants.OS_PLATFORM_FONTS_FOLDER;
default:
diff --git a/android/testSrc/com/android/tools/idea/IdeaTestSuite.java b/android/testSrc/com/android/tools/idea/IdeaTestSuite.java
index b6f8a6f3e65..fa5b8794d7c 100644
--- a/android/testSrc/com/android/tools/idea/IdeaTestSuite.java
+++ b/android/testSrc/com/android/tools/idea/IdeaTestSuite.java
@@ -55,7 +55,6 @@ public class IdeaTestSuite extends IdeaTestSuiteBase {
"tools/adt/idea/android/lib",
"tools/adt/idea/artwork/resources/device-art-resources",
"tools/adt/idea/android/testData",
- "tools/adt/idea/resources-aar/framework_res.jar",
"tools/base/templates",
"tools/idea/java");
diff --git a/designer/BUILD b/designer/BUILD
index 31ffe651e49..d1a44fe26e9 100644
--- a/designer/BUILD
+++ b/designer/BUILD
@@ -64,6 +64,7 @@ iml_module(
"//prebuilts/studio/jdk",
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/studio/sdk:build-tools/latest",
"//prebuilts/studio/sdk:platforms/latest",
"//tools/adt/idea/android:test_deps.zip",
@@ -72,7 +73,6 @@ iml_module(
"//tools/adt/idea/android/lib:sampleData",
"//tools/adt/idea/android/testData",
"//tools/adt/idea/designer/testData",
- "//tools/adt/idea/resources-aar:framework_res",
"//tools/base/build-system:gradle-distrib",
"//tools/base/build-system:studio_repo.zip",
"//tools/base/build-system/previous-versions:2.2.0.zip",
diff --git a/designer/testSrc/com/android/tools/idea/DesignerTestSuite.java b/designer/testSrc/com/android/tools/idea/DesignerTestSuite.java
index f27a9729ec8..ce307e60d46 100644
--- a/designer/testSrc/com/android/tools/idea/DesignerTestSuite.java
+++ b/designer/testSrc/com/android/tools/idea/DesignerTestSuite.java
@@ -43,7 +43,6 @@ public class DesignerTestSuite extends IdeaTestSuiteBase {
"tools/adt/idea/android/lib/sampleData",
"tools/adt/idea/android/testData",
"tools/adt/idea/designer/testData",
- "tools/adt/idea/resources-aar/framework_res.jar",
"tools/base/templates",
"tools/idea/java");
diff --git a/layoutlib/BUILD b/layoutlib/BUILD
index df153f73f2c..711d275b6b4 100644
--- a/layoutlib/BUILD
+++ b/layoutlib/BUILD
@@ -7,7 +7,7 @@ iml_module(
bundle_data = [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
- "//tools/adt/idea/resources-aar:framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
],
iml_files = ["intellij.android.layoutlib.iml"],
lint_baseline = "//tools/base/lint:studio-checks/empty_baseline.xml",
diff --git a/naveditor/BUILD b/naveditor/BUILD
index ab7bb8611c6..c4899f42a35 100644
--- a/naveditor/BUILD
+++ b/naveditor/BUILD
@@ -53,9 +53,9 @@ iml_module(
test_data = [
"//prebuilts/studio/layoutlib:buildprop",
"//prebuilts/studio/layoutlib:data/fonts",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//tools/adt/idea/android/testData",
"//tools/adt/idea/designer/testData",
- "//tools/adt/idea/resources-aar:framework_res",
"//tools/adt/idea/android:test_deps.zip",
"//tools/idea:platform-build-info",
"//prebuilts/studio/sdk:platforms/latest",
diff --git a/naveditor/testSrc/com/android/tools/idea/naveditor/NavEditorTestSuite.java b/naveditor/testSrc/com/android/tools/idea/naveditor/NavEditorTestSuite.java
index cacb6ee1d9e..46987ac9223 100644
--- a/naveditor/testSrc/com/android/tools/idea/naveditor/NavEditorTestSuite.java
+++ b/naveditor/testSrc/com/android/tools/idea/naveditor/NavEditorTestSuite.java
@@ -31,8 +31,7 @@ public class NavEditorTestSuite extends IdeaTestSuiteBase {
"prebuilts/studio/layoutlib",
"tools/adt/idea/android/testData",
"tools/adt/idea/designer/testData",
- "tools/adt/idea/naveditor/testData",
- "tools/adt/idea/resources-aar/framework_res.jar"
+ "tools/adt/idea/naveditor/testData"
);
setUpOfflineRepo("tools/adt/idea/android/test_deps.zip", "prebuilts/tools/common/m2/repository");
diff --git a/resources-aar/BUILD b/resources-aar/BUILD
index 666abf4deff..088ca811c95 100644
--- a/resources-aar/BUILD
+++ b/resources-aar/BUILD
@@ -29,7 +29,7 @@ iml_module(
test_coverage = True,
# keep sorted
test_data = [
- ":framework_res",
+ "//prebuilts/studio/layoutlib:data/framework_res",
"//prebuilts/studio/layoutlib:data/res",
"//prebuilts/studio/sdk:platforms/latest",
"//tools/adt/idea/android/testData",
diff --git a/resources-aar/src/com/android/tools/idea/resources/aar/FrameworkResJarCreator.java b/resources-aar/src/com/android/tools/idea/resources/aar/FrameworkResJarCreator.java
index df782c62e05..6711e74816e 100644
--- a/resources-aar/src/com/android/tools/idea/resources/aar/FrameworkResJarCreator.java
+++ b/resources-aar/src/com/android/tools/idea/resources/aar/FrameworkResJarCreator.java
@@ -15,6 +15,7 @@
*/
package com.android.tools.idea.resources.aar;
+import com.google.common.annotations.VisibleForTesting;
import com.intellij.openapi.util.io.FileUtil;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -24,6 +25,9 @@ import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.SimpleFileVisitor;
import java.nio.file.attribute.BasicFileAttributes;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
import java.util.Set;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
@@ -55,7 +59,8 @@ public class FrameworkResJarCreator {
}
}
- private static void createJar(@NotNull Path resDirectory, @NotNull Path jarFile) throws IOException {
+ @VisibleForTesting
+ static void createJar(@NotNull Path resDirectory, @NotNull Path jarFile) throws IOException {
FrameworkResourceRepository repository = FrameworkResourceRepository.create(resDirectory, (Set<String>)null, null);
Set<String> languages = repository.getLanguageGroups();
@@ -64,23 +69,36 @@ public class FrameworkResJarCreator {
String entryName = FrameworkResourceRepository.getResourceTableNameForLanguage(language);
createZipEntry(entryName, getEncodedResources(repository, language), zip);
}
+
Path parentDir = resDirectory.getParent();
- Files.walkFileTree(resDirectory, new SimpleFileVisitor<Path>() {
- @Override
- @NotNull
- public FileVisitResult visitFile(@NotNull Path file, @NotNull BasicFileAttributes attrs) throws IOException {
- // When running on Windows, we need to make sure that the file entries are correctly encoded with the Unix path separator since the
- // ZIP file spec only allows for that one.
- String relativePath = FileUtil.toSystemIndependentName(parentDir.relativize(file).toString());
- if (!relativePath.equals("res/version")) { // Skip the "version" file.
- createZipEntry(relativePath, Files.readAllBytes(file), zip);
- }
- return FileVisitResult.CONTINUE;
+ List<Path> files = getContainedFiles(resDirectory);
+
+ for (Path file : files) {
+ // When running on Windows, we need to make sure that the file entries are correctly encoded
+ // with the Unix path separator since the ZIP file spec only allows for that one.
+ String relativePath = FileUtil.toSystemIndependentName(parentDir.relativize(file).toString());
+ if (!relativePath.equals("res/version")) { // Skip the "version" file.
+ createZipEntry(relativePath, Files.readAllBytes(file), zip);
}
- });
+ }
}
}
+ @NotNull
+ private static List<Path> getContainedFiles(@NotNull Path resDirectory) throws IOException {
+ List<Path> files = new ArrayList<>();
+ Files.walkFileTree(resDirectory, new SimpleFileVisitor<Path>() {
+ @Override
+ @NotNull
+ public FileVisitResult visitFile(@NotNull Path file, @NotNull BasicFileAttributes attrs) {
+ files.add(file);
+ return FileVisitResult.CONTINUE;
+ }
+ });
+ Collections.sort(files); // Make sure that the files are in canonical order.
+ return files;
+ }
+
private static void createZipEntry(@NotNull String name, @NotNull byte[] content, @NotNull ZipOutputStream zip) throws IOException {
ZipEntry entry = new ZipEntry(name);
zip.putNextEntry(entry);
diff --git a/resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResJarTest.java b/resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResJarTest.java
new file mode 100644
index 00000000000..c08179eecb5
--- /dev/null
+++ b/resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResJarTest.java
@@ -0,0 +1,133 @@
+/*
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * 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.
+ */
+package com.android.tools.idea.resources.aar;
+
+import static com.android.SdkConstants.FD_DATA;
+import static com.android.SdkConstants.FD_RES;
+
+import com.android.sdklib.IAndroidTarget;
+import com.android.utils.PathUtils;
+import com.intellij.testFramework.PlatformTestCase;
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Enumeration;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+import org.jetbrains.android.sdk.StudioEmbeddedRenderTarget;
+import org.jetbrains.annotations.NotNull;
+
+/**
+ * Checks that the {@code prebuilts/studio/layoutlib/data/framework_res.jar} file is up to date.
+ * <p>
+ * If this test fails, run {@code tools/vendor/google/layoutlib-prebuilt/build_framework_res_jar.sh}
+ * to update {@code prebuilts/studio/layoutlib/data/framework_res.jar}.
+ */
+public class FrameworkResJarTest extends PlatformTestCase {
+ private Path myTempDir;
+
+ /** Returns the path of framework_res.jar in prebuilts. */
+ @NotNull
+ private static Path getFrameworkResJar() {
+ IAndroidTarget renderTarget = StudioEmbeddedRenderTarget.getInstance();
+ return Paths.get(renderTarget.getPath(IAndroidTarget.RESOURCES));
+ }
+
+ /** Returns the path of the framework res directory in prebuilts. */
+ @NotNull
+ private static Path getFrameworkResDir() {
+ IAndroidTarget renderTarget = StudioEmbeddedRenderTarget.getInstance();
+ return Paths.get(renderTarget.getLocation(), FD_DATA, FD_RES);
+ }
+
+ /** Returns the path of a freshly built framework_res.jar. */
+ @NotNull
+ private Path getExpectedFrameworkResJar() throws IOException {
+ Path path = myTempDir.resolve("framework_res.jar");
+ FrameworkResJarCreator.createJar(getFrameworkResDir(), path);
+ return path;
+ }
+
+ private static void frameworkResJarIsOutOfDate(@NotNull Path file) {
+ fail("The " + file + " file is out of date." +
+ " Please run tools/vendor/google/layoutlib-prebuilt/build_framework_res_jar.sh to update it.");
+ }
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ myTempDir = Files.createTempDirectory("framework_res");
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ try {
+ PathUtils.deleteRecursivelyIfExists(myTempDir);
+ } finally {
+ super.tearDown();
+ }
+ }
+
+ public void testCompareJars() throws Exception {
+ Path file = getFrameworkResJar();
+ Path expectedFile = getExpectedFrameworkResJar();
+ try (ZipFile zip1 = new ZipFile(file.toFile());
+ ZipFile zip2 = new ZipFile(expectedFile.toFile())) {
+ Enumeration<? extends ZipEntry> entries1 = zip1.entries();
+ Enumeration<? extends ZipEntry> entries2 = zip2.entries();
+ while (true) {
+ boolean hasMore1 = entries1.hasMoreElements();
+ boolean hasMore2 = entries1.hasMoreElements();
+ if (hasMore1 != hasMore2) {
+ frameworkResJarIsOutOfDate(file);
+ }
+ if (!hasMore1) {
+ break;
+ }
+ ZipEntry entry1 = entries1.nextElement();
+ ZipEntry entry2 = entries2.nextElement();
+ if (!entry1.getName().equals(entry2.getName())) {
+ frameworkResJarIsOutOfDate(file);
+ }
+ if (entry1.getMethod() != entry2.getMethod()) {
+ frameworkResJarIsOutOfDate(file);
+ }
+ byte[] buf1 = new byte[8192];
+ byte[] buf2 = new byte[8192];
+ try (InputStream stream1 = zip1.getInputStream(entry1);
+ InputStream stream2 = zip2.getInputStream(entry2)) {
+ while (true) {
+ int n1 = stream1.read(buf1);
+ int n2 = stream2.read(buf2);
+ if (n1 != n2) {
+ frameworkResJarIsOutOfDate(file);
+ }
+ if (n1 < 0) {
+ break;
+ }
+ for (int i = 0; i < n1; i++) {
+ if (buf1[i] != buf2[i]) {
+ frameworkResJarIsOutOfDate(file);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResourceRepositoryTest.java b/resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResourceRepositoryTest.java
index 6e9ee0b6706..f4fe9ef59fb 100644
--- a/resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResourceRepositoryTest.java
+++ b/resources-aar/testSrc/com/android/tools/idea/resources/aar/FrameworkResourceRepositoryTest.java
@@ -15,6 +15,8 @@
*/
package com.android.tools.idea.resources.aar;
+import static com.android.SdkConstants.FD_DATA;
+import static com.android.SdkConstants.FD_RES;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth.assertWithMessage;
import static com.google.common.util.concurrent.MoreExecutors.directExecutor;
@@ -37,14 +39,13 @@ import com.android.resources.Density;
import com.android.resources.ResourceType;
import com.android.resources.ResourceVisibility;
import com.android.sdklib.IAndroidTarget;
-import com.android.tools.idea.configurations.ConfigurationManager;
-import com.android.tools.idea.rendering.multi.CompatibilityRenderTarget;
import com.android.tools.idea.res.ResourceHelper;
import com.android.utils.PathUtils;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Sets;
-import com.intellij.openapi.application.PathManager;
+import com.intellij.testFramework.PlatformTestCase;
+import java.io.IOException;
import java.net.URI;
import java.nio.file.Files;
import java.nio.file.Path;
@@ -60,9 +61,6 @@ import java.util.Objects;
import java.util.Set;
import java.util.concurrent.Executor;
import java.util.stream.Collectors;
-import junit.framework.AssertionFailedError;
-import junit.framework.TestCase;
-import org.jetbrains.android.AndroidTestCase;
import org.jetbrains.android.sdk.StudioEmbeddedRenderTarget;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -70,17 +68,16 @@ import org.jetbrains.annotations.Nullable;
/**
* Tests for {@link FrameworkResourceRepository}.
*/
-public class FrameworkResourceRepositoryTest extends AndroidTestCase {
+public class FrameworkResourceRepositoryTest extends PlatformTestCase {
/** Enables printing of repository statistics. */
private static final boolean PRINT_STATS = false;
- private static final String FRAMEWORK_RES_JAR_PATH = "tools/adt/idea/resources-aar/framework_res.jar";
private Path myResourceFolder;
- private Path myCacheDir;
+ private Path myTempDir;
@NotNull
private Path getCacheFile() {
- return myCacheDir.resolve("cache.bin");
+ return myTempDir.resolve("cache.bin");
}
@NotNull
@@ -92,33 +89,17 @@ public class FrameworkResourceRepositoryTest extends AndroidTestCase {
* Returns the resource folder of the Android framework resources used by LayoutLib.
*/
@NotNull
- private Path getSdkResFolder() {
- ConfigurationManager manager = ConfigurationManager.getOrCreateInstance(myModule);
- IAndroidTarget target = manager.getHighestApiTarget();
- if (target == null) {
- TestCase.fail();
- }
- CompatibilityRenderTarget compatibilityTarget = StudioEmbeddedRenderTarget.getCompatibilityTarget(target);
- return Paths.get(compatibilityTarget.getLocation(), "data", "res").normalize();
+ private static Path getFrameworkResDir() {
+ IAndroidTarget renderTarget = StudioEmbeddedRenderTarget.getInstance();
+ return Paths.get(renderTarget.getLocation(), FD_DATA, FD_RES).normalize();
}
- /**
- * Returns the resource folder of the Android framework resources used by LayoutLib.
- */
+ /** Returns the path of a freshly built framework_res.jar. */
@NotNull
- private static Path getFrameworkResJar() {
- Path rootPath = Paths.get(PathManager.getHomePath()).getParent().getParent();
- // For running from Bazel.
- Path path = rootPath.resolve(FRAMEWORK_RES_JAR_PATH).normalize();
- if (Files.exists(path)) {
- return path;
- }
- // For running from IntelliJ.
- path = rootPath.resolve("bazel-genfiles/" + FRAMEWORK_RES_JAR_PATH);
- if (Files.exists(path)) {
- return path;
- }
- throw new AssertionFailedError("Could not find " + FRAMEWORK_RES_JAR_PATH);
+ private Path getFrameworkResJar() throws IOException {
+ Path path = myTempDir.resolve("framework_res.jar");
+ FrameworkResJarCreator.createJar(getFrameworkResDir(), path);
+ return path;
}
private static void assertVisibility(
@@ -454,14 +435,14 @@ public class FrameworkResourceRepositoryTest extends AndroidTestCase {
@Override
protected void setUp() throws Exception {
super.setUp();
- myResourceFolder = getSdkResFolder();
- myCacheDir = Files.createTempDirectory("caches");
+ myResourceFolder = getFrameworkResDir();
+ myTempDir = Files.createTempDirectory("temp");
}
@Override
protected void tearDown() throws Exception {
try {
- PathUtils.deleteRecursivelyIfExists(myCacheDir);
+ PathUtils.deleteRecursivelyIfExists(myTempDir);
} finally {
super.tearDown();
}
@@ -470,7 +451,7 @@ public class FrameworkResourceRepositoryTest extends AndroidTestCase {
public void testLoadingFromSourcesAndCache() throws Exception {
for (Set<String> languages : Arrays.asList(ImmutableSet.<String>of(), ImmutableSet.of("fr", "it"), null)) {
// Create persistent cache.
- PathUtils.deleteRecursivelyIfExists(myCacheDir);
+ PathUtils.deleteRecursivelyIfExists(myTempDir);
FrameworkResourceRepository.create(myResourceFolder, languages, createCachingData(directExecutor()));
long loadTimeFromSources = 0;
@@ -505,7 +486,7 @@ public class FrameworkResourceRepositoryTest extends AndroidTestCase {
}
}
- public void testLoadingFromSourcesAndJar() {
+ public void testLoadingFromSourcesAndJar() throws Exception {
Path frameworkResJar = getFrameworkResJar();
for (Set<String> languages : Arrays.asList(ImmutableSet.<String>of(), ImmutableSet.of("fr", "de"), null)) {
long loadTimeFromSources = 0;
@@ -539,7 +520,7 @@ public class FrameworkResourceRepositoryTest extends AndroidTestCase {
}
}
- public void testIncrementalLoadingFromJar() {
+ public void testIncrementalLoadingFromJar() throws Exception {
Path frameworkResJar = getFrameworkResJar();
FrameworkResourceRepository withFrench = FrameworkResourceRepository.create(frameworkResJar, ImmutableSet.of("fr"), null);
checkLanguages(withFrench, ImmutableSet.of("fr"));
diff --git a/resources-aar/testSrc/com/android/tools/idea/resources/aar/ResourcesAarTestSuite.java b/resources-aar/testSrc/com/android/tools/idea/resources/aar/ResourcesAarTestSuite.java
index b781e99b57d..8943af2c0c2 100644
--- a/resources-aar/testSrc/com/android/tools/idea/resources/aar/ResourcesAarTestSuite.java
+++ b/resources-aar/testSrc/com/android/tools/idea/resources/aar/ResourcesAarTestSuite.java
@@ -25,8 +25,7 @@ public class ResourcesAarTestSuite extends IdeaTestSuiteBase {
static {
symlinkToIdeaHome(
"prebuilts/studio/layoutlib",
- "tools/adt/idea/android/testData",
- "tools/adt/idea/resources-aar/framework_res.jar"
+ "tools/adt/idea/android/testData"
);
setUpOfflineRepo("tools/base/build-system/studio_repo.zip", "out/studio/repo");