### Question:
AvroType implements PType<T> { public boolean isGeneric() { return GenericData.Record.class.equals(typeClass); } AvroType(Class<T> typeClass, Schema schema, PType... ptypes);  AvroType(Class<T> typeClass, Schema schema, MapFn inputMapFn,
			MapFn outputMapFn, PType... ptypes); @Override Class<T> getTypeClass(); @Override PTypeFamily getFamily(); @Override List<PType> getSubTypes(); Schema getSchema(); boolean isSpecific(); boolean isGeneric(); MapFn<Object, T> getInputMapFn(); MapFn<T, Object> getOutputMapFn(); @Override Converter getConverter(); @Override SourceTarget<T> getDefaultFileSource(Path path); T getDetachedValue(T value); @Override boolean equals(Object other); @Override int hashCode();  }### Answer:
@Test public void testIsGeneric_SpecificData() { assertFalse(Avros.records(Person.class).isGeneric()); }
@Test public void testIsGeneric_GenericData() { assertTrue(Avros.generics(Person.SCHEMA$).isGeneric()); }
@Test public void testIsGeneric_NonAvroClass() { assertFalse(Avros.ints().isGeneric()); }
@Test public void testIsGeneric_SpecificAvroTable() { assertFalse(Avros.tableOf(Avros.strings(), Avros.records(Person.class)) .isGeneric()); }
@Test public void testIsGeneric_GenericAvroTable() { assertTrue(Avros.tableOf(Avros.strings(), Avros.generics(Person.SCHEMA$)).isGeneric()); }