public static SchemaAnnotationProcessResult process(List<SchemaAnnotationHandler> handlers,
                                                      DataSchema dataSchema, AnnotationProcessOption options)
  {
    return process(handlers, dataSchema, options, true);
  }
@Test(dataProvider = "denormalizedSchemaTestCases_invalid")
  public void testDenormalizedSchemaProcessing_invalid(String filePath, String errorMsg) throws Exception
  {
    DataSchema dataSchema = TestUtil.dataSchemaFromPdlInputStream(getClass().getResourceAsStream(filePath));

    PegasusSchemaAnnotationHandlerImpl customAnnotationHandler = new PegasusSchemaAnnotationHandlerImpl(TEST_ANNOTATION_LABEL);
    SchemaAnnotationProcessor.SchemaAnnotationProcessResult result =
        SchemaAnnotationProcessor.process(Arrays.asList(customAnnotationHandler), dataSchema,
                                          new SchemaAnnotationProcessor.AnnotationProcessOption());
    System.out.println(result.getErrorMsgs());
    assert(result.hasError());
    assert(result.getErrorMsgs().equals(errorMsg));
  }