@Override
  public <T> @NonNull Schema schemaFor(TypeDescriptor<T> typeDescriptor) {
    return schemaFor(typeDescriptor.getRawType());
  }
@Test(expected = IllegalStateException.class)
  public void testMainStructSchemaWithoutTypedefRegistration() {
    // container typedefs like set<string> cannot be inferred based on available metadata
    defaultSchemaProvider.schemaFor(TypeDescriptor.of(TestThriftStruct.class));
  }