aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google
diff options
context:
space:
mode:
authorGravatar corysmith <corysmith@google.com>2017-05-17 19:14:56 +0200
committerGravatar Dmitry Lomov <dslomov@google.com>2017-05-19 15:07:43 +0200
commitba23f313daf8d0afd8c35ccc72c5661fd897bd5e (patch)
tree322f19965d38f3040aa00cd636c883c5b721f081 /src/test/java/com/google
parent98d29f81bafe7ab6b0ff05ade92b4987d7b27bbf (diff)
Remove the RTxtSymbolEntry in favor of the FieldInitializer class.
RELNOTES: None PiperOrigin-RevId: 156321468
Diffstat (limited to 'src/test/java/com/google')
-rw-r--r--src/test/java/com/google/devtools/build/android/resources/RClassGeneratorTest.java51
1 files changed, 31 insertions, 20 deletions
diff --git a/src/test/java/com/google/devtools/build/android/resources/RClassGeneratorTest.java b/src/test/java/com/google/devtools/build/android/resources/RClassGeneratorTest.java
index 93f3854618..a115001a93 100644
--- a/src/test/java/com/google/devtools/build/android/resources/RClassGeneratorTest.java
+++ b/src/test/java/com/google/devtools/build/android/resources/RClassGeneratorTest.java
@@ -32,6 +32,9 @@ import java.nio.file.Files;
import java.nio.file.Path;
import java.util.List;
import java.util.concurrent.ExecutionException;
+import org.hamcrest.BaseMatcher;
+import org.hamcrest.Description;
+import org.hamcrest.Matcher;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -84,7 +87,7 @@ public class RClassGeneratorTest {
Path out = temp.resolve("classes");
Files.createDirectories(out);
RClassGenerator writer = RClassGenerator.fromSymbols(out, symbolValues, finalFields);
- writer.write("com.bar", symbolsInLibrary.asFilterMap());
+ writer.write("com.bar", symbolsInLibrary.asInitializers());
Path packageDir = out.resolve("com/bar");
checkFilesInPackage(packageDir, "R.class", "R$attr.class", "R$id.class", "R$string.class");
@@ -125,7 +128,7 @@ public class RClassGeneratorTest {
Path out = temp.resolve("classes");
Files.createDirectories(out);
RClassGenerator writer = RClassGenerator.fromSymbols(out, symbolValues, finalFields);
- writer.write("com.testEmptyIntArray", symbolsInLibrary.asFilterMap());
+ writer.write("com.testEmptyIntArray", symbolsInLibrary.asInitializers());
Path packageDir = out.resolve("com/testEmptyIntArray");
checkFilesInPackage(packageDir, "R.class", "R$styleable.class");
@@ -142,29 +145,37 @@ public class RClassGeneratorTest {
finalFields
);
}
+
+ static final Matcher<Throwable> NUMBER_FORMAT_EXCEPTION =
+ new BaseMatcher<Throwable>() {
+ @Override
+ public boolean matches(Object item) {
+ if (item instanceof NumberFormatException) {
+ return true;
+ }
+ return false;
+ }
+
+ @Override
+ public void describeTo(Description description) {
+ description.appendText(NumberFormatException.class.toString());
+ }
+ };
@Test
public void corruptIntArraysTrailingComma() throws Exception {
- boolean finalFields = true;
// Test a few cases of what happens if the R.txt is corrupted. It shouldn't happen unless there
// is a bug in aapt, or R.txt is manually written the wrong way.
- ResourceSymbols symbolValues =
- createSymbolFile("R.txt", "int[] styleable ActionMenuView { 1, }");
- Path out = temp.resolve("classes");
- Files.createDirectories(out);
- thrown.expect(NumberFormatException.class);
- RClassGenerator.fromSymbols(out, symbolValues, finalFields);
+ Path path = createFile("R.txt", new String[] {"int[] styleable ActionMenuView { 1, }"});
+ thrown.expectCause(NUMBER_FORMAT_EXCEPTION);
+ ResourceSymbols.load(path, MoreExecutors.newDirectExecutorService()).get();
}
@Test
public void corruptIntArraysOmittedMiddle() throws Exception {
- boolean finalFields = true;
- ResourceSymbols symbolValues =
- createSymbolFile("R.txt", "int[] styleable ActionMenuView { 1, , 2 }");
- Path out = temp.resolve("classes");
- Files.createDirectories(out);
- thrown.expect(NumberFormatException.class);
- RClassGenerator.fromSymbols(out, symbolValues, finalFields);
+ Path path = createFile("R.txt", "int[] styleable ActionMenuView { 1, , 2 }");
+ thrown.expectCause(NUMBER_FORMAT_EXCEPTION);
+ ResourceSymbols.load(path, MoreExecutors.newDirectExecutorService()).get();
}
@Test
@@ -183,7 +194,7 @@ public class RClassGeneratorTest {
Path out = temp.resolve("classes");
Files.createDirectories(out);
RClassGenerator writer = RClassGenerator.fromSymbols(out, symbolValues, finalFields);
- writer.write("com.foo", symbolsInLibrary.asFilterMap());
+ writer.write("com.foo", symbolsInLibrary.asInitializers());
Path packageDir = out.resolve("com/foo");
checkFilesInPackage(packageDir, "R.class", "R$layout.class");
@@ -209,7 +220,7 @@ public class RClassGeneratorTest {
Path out = temp.resolve("classes");
Files.createDirectories(out);
RClassGenerator writer = RClassGenerator.fromSymbols(out, symbolValues, finalFields);
- writer.write("com.foo", symbolsInLibrary.asFilterMap());
+ writer.write("com.foo", symbolsInLibrary.asInitializers());
Path packageDir = out.resolve("com/foo");
@@ -252,7 +263,7 @@ public class RClassGeneratorTest {
Path out = temp.resolve("classes");
Files.createDirectories(out);
RClassGenerator writer = RClassGenerator.fromSymbols(out, symbolValues, finalFields);
- writer.write("com.intArray", symbolsInLibrary.asFilterMap());
+ writer.write("com.intArray", symbolsInLibrary.asInitializers());
Path packageDir = out.resolve("com/intArray");
checkFilesInPackage(packageDir, "R.class", "R$attr.class", "R$styleable.class");
@@ -305,7 +316,7 @@ public class RClassGeneratorTest {
Path out = temp.resolve("classes");
Files.createDirectories(out);
RClassGenerator writer = RClassGenerator.fromSymbols(out, symbolValues, finalFields);
- writer.write("", symbolsInLibrary.asFilterMap());
+ writer.write("", symbolsInLibrary.asInitializers());
Path packageDir = out.resolve("");
checkFilesInPackage(packageDir, "R.class", "R$string.class");