use of org.apache.beam.sdk.schemas.utils.TestPOJOs.PrimitiveArrayPOJO in project beam by apache.
the class JavaFieldSchemaTest method testPrimitiveArrayGetters.
@Test
public void testPrimitiveArrayGetters() throws NoSuchSchemaException {
SchemaRegistry registry = SchemaRegistry.createDefault();
SchemaTestUtils.assertSchemaEquivalent(PRIMITIVE_ARRAY_POJO_SCHEMA, registry.getSchema(PrimitiveArrayPOJO.class));
List<String> strList = ImmutableList.of("a", "b", "c");
int[] intArray = { 1, 2, 3, 4 };
Long[] longArray = { 42L, 43L, 44L };
PrimitiveArrayPOJO pojo = new PrimitiveArrayPOJO(strList, intArray, longArray);
Row row = registry.getToRowFunction(PrimitiveArrayPOJO.class).apply(pojo);
assertEquals(strList, row.getArray("strings"));
assertEquals(Ints.asList(intArray), row.getArray("integers"));
assertEquals(Arrays.asList(longArray), row.getArray("longs"));
// Ensure that list caching works.
assertSame(row.getArray("strings"), row.getArray("strings"));
assertSame(row.getArray("integers"), row.getArray("integers"));
assertSame(row.getArray("longs"), row.getArray("longs"));
}
use of org.apache.beam.sdk.schemas.utils.TestPOJOs.PrimitiveArrayPOJO in project beam by apache.
the class JavaFieldSchemaTest method testPrimitiveArraySetters.
@Test
public void testPrimitiveArraySetters() throws NoSuchSchemaException {
SchemaRegistry registry = SchemaRegistry.createDefault();
Row row = Row.withSchema(PRIMITIVE_ARRAY_POJO_SCHEMA).addArray("a", "b", "c", "d").addArray(1, 2, 3, 4).addArray(42L, 43L, 44L, 45L).build();
PrimitiveArrayPOJO pojo = registry.getFromRowFunction(PrimitiveArrayPOJO.class).apply(row);
assertEquals(row.getArray("strings"), pojo.strings);
assertEquals(row.getArray("integers"), Ints.asList(pojo.integers));
assertEquals(row.getArray("longs"), Arrays.asList(pojo.longs));
}
Aggregations