summaryrefslogtreecommitdiff
path: root/tests/Codegen/src/com/android/codegentest/SampleDataClassTest.java
diff options
context:
space:
mode:
authorEugene Susla <eugenesusla@google.com>2019-07-25 14:05:12 -0700
committerEugene Susla <eugenesusla@google.com>2019-08-05 16:54:41 -0700
commit3156a4ce21cb4de46f84b8c7264a3dc31dd8db8b (patch)
treecf2a361a56d6f45de239da3ff5f4fa58e1d59431 /tests/Codegen/src/com/android/codegentest/SampleDataClassTest.java
parent2eaec69928b0394b7e6979c71a707d1b2418365c (diff)
Addresses further review comments from ag/8000041
Including: - An API to opt out of Int/StringDefs generation on per-field basis - A way to customize Builder - Non-optional fields are passed in Builder constructor - Various adjustments to SampleDataclass examples, as requested Test: . $ANDROID_BUILD_TOP/frameworks/base/tests/Codegen/runTest.sh Change-Id: I32d2eec52f05d505ff07779d923e4793d3036579
Diffstat (limited to 'tests/Codegen/src/com/android/codegentest/SampleDataClassTest.java')
-rw-r--r--tests/Codegen/src/com/android/codegentest/SampleDataClassTest.java18
1 files changed, 11 insertions, 7 deletions
diff --git a/tests/Codegen/src/com/android/codegentest/SampleDataClassTest.java b/tests/Codegen/src/com/android/codegentest/SampleDataClassTest.java
index 71e85ab00eab..663620743af9 100644
--- a/tests/Codegen/src/com/android/codegentest/SampleDataClassTest.java
+++ b/tests/Codegen/src/com/android/codegentest/SampleDataClassTest.java
@@ -49,7 +49,7 @@ public class SampleDataClassTest {
private SampleDataClass mSpecimen = newBuilder().build();
private static SampleDataClass.Builder newBuilder() {
- return newIncompleteBuilder()
+ return newInvalidBuilder()
.setNum(42)
.setNum2(42)
.setNum4(42)
@@ -57,9 +57,8 @@ public class SampleDataClassTest {
.setLinkAddresses5();
}
- private static SampleDataClass.Builder newIncompleteBuilder() {
- return new SampleDataClass.Builder()
- .markActive()
+ private static SampleDataClass.Builder newInvalidBuilder() {
+ return new SampleDataClass.Builder(1, 2, 3, "a", 0, null)
.setName("some parcelable")
.setFlags(SampleDataClass.FLAG_MANUAL_REQUEST);
}
@@ -91,7 +90,7 @@ public class SampleDataClassTest {
public void testCustomParcelling_instanceIsCached() {
parcelAndUnparcel(mSpecimen, SampleDataClass.CREATOR);
parcelAndUnparcel(mSpecimen, SampleDataClass.CREATOR);
- assertEquals(1, DateParcelling.sInstanceCount.get());
+ assertEquals(1, MyDateParcelling.sInstanceCount.get());
}
@Test
@@ -149,8 +148,8 @@ public class SampleDataClassTest {
}
@Test(expected = IllegalStateException.class)
- public void testBuilder_throwsWhenRequiredFieldMissing() {
- newIncompleteBuilder().build();
+ public void testBuilder_performsValidation() {
+ newInvalidBuilder().build();
}
@Test
@@ -205,6 +204,11 @@ public class SampleDataClassTest {
assertSame(tmpStorage, tmpStorageAgain);
}
+ @Test(expected = IllegalStateException.class)
+ public void testCustomAnnotationValidation_isRun() {
+ newBuilder().setDayOfWeek(42).build();
+ }
+
private static <T extends Parcelable> T parcelAndUnparcel(
T original, Parcelable.Creator<T> creator) {
Parcel p = Parcel.obtain();