/** Report errors and warnings. */ public static void reportDiags(DiagCollector diagCollector, boolean colored) { for (Diag diag : diagCollector.getDiags()) { System.err.println(diagToString(diag, colored)); } }
/** Report errors and warnings. */ public static void reportDiags(DiagCollector diagCollector, boolean colored) { for (Diag diag : diagCollector.getDiags()) { System.err.println(diagToString(diag, colored)); } }
/** Returns diagnosis, including errors and warnings. */ public List<Diag> getDiags() { return getDiagCollector().getDiags(); }
public void appendAllDiags(DiagCollector diagCollector) { diags.addAll(diagCollector.getDiags()); errorCount += diagCollector.getErrorCount(); }
public void appendAllDiags(DiagCollector diagCollector) { diags.addAll(diagCollector.getDiags()); errorCount += diagCollector.getErrorCount(); }
/** Returns diagnosis, including errors and warnings. */ public List<Diag> getDiags() { return getDiagCollector().getDiags(); }
@Override public List<Diag> getDiags() { return model.getDiagReporter().getDiagCollector().getDiags(); } };
@Override public List<Diag> getDiags() { return model.getDiagReporter().getDiagCollector().getDiags(); } };
private List<Diag> getErrors() { return FluentIterable.from(diagReporter.getDiagCollector().getDiags()) .filter( new Predicate<Diag>() { @Override public boolean apply(Diag diag) { return Kind.ERROR.equals(diag.getKind()); } }) .toList(); } }
private void assertWarning(final String phrase) { Assert.assertTrue(model.getDiagReporter().getDiagCollector().getDiags().size() > 0); Assert.assertTrue( Iterators.any( model.getDiagReporter().getDiagCollector().getDiags().iterator(), new Predicate<Diag>() { @Override public boolean apply(Diag diag) { return diag.getKind() != Kind.ERROR && diag.toString().contains(phrase); } })); }
@Override protected void process() throws Exception { model.establishStage(Merged.KEY); if (model.getDiagReporter().getDiagCollector().getErrorCount() > 0) { for (Diag diag : model.getDiagReporter().getDiagCollector().getDiags()) { System.err.println(diag.toString()); } return; } String outputPath = options.get(OUTPUT_FILE); Map<String, String> outputFiles = generateConfig(outputPath); ToolUtil.writeFiles(outputFiles, ""); }
/** * Asserts if filtered result equals expected string. Asserts failure if there are errors detected * during the filtering. */ private void assertResult(String expected, String result) { if (diagReporter.getDiagCollector().getErrorCount() > 0) { Truth.assertWithMessage("Errors detected while filtering comment") .fail(NEWLINE_JOINER.join(diagReporter.getDiagCollector().getDiags())); } else { Truth.assertThat(result).isEqualTo(expected); } }
@Override protected void process() throws Exception { model.establishStage(Merged.KEY); if (model.getDiagReporter().getDiagCollector().getErrorCount() > 0) { for (Diag diag : model.getDiagReporter().getDiagCollector().getDiags()) { System.err.println(diag.toString()); } return; } Map<String, GeneratedResult<Doc>> results = generate(model); ToolUtil.writeFiles(GeneratedResult.extractBodies(results), options.get(OUTPUT_DIR)); }
private void checkNoErrors() { if (model.getDiagReporter().getDiagCollector().hasErrors()) { Assert.fail( "Errors: " + Joiner.on("\n").join(model.getDiagReporter().getDiagCollector().getDiags())); } StageValidator.assertStages(ImmutableList.<Key<?>>of(Resolved.KEY, Merged.KEY), model); }
/** * Merges configurations from all the additionalConfigs and returns a normalized {@link Service} * instance. */ public static Service normalizeService( Service service, DiagCollector diagCollector, List<FileWrapper> additionalConfigs) { Model model = createModel(service, additionalConfigs); model.establishStage(Normalized.KEY); for (Diag diag : model.getDiagReporter().getDiagCollector().getDiags()) { diagCollector.addDiag(diag); } if (model.getDiagReporter().getDiagCollector().hasErrors()) { return null; } return model.getNormalizedConfig(); }
/** Runs the test for normalizing given source and compare the result with baseline result. */ private void runTest(String source, String docPath) { normalizer = new SourceNormalizer(diagReporter, docPath); testOutput() .println( normalizer.process(source, ResolvedLocation.create(SimpleLocation.TOPLEVEL), element)); for (Diag diag : diagReporter.getDiagCollector().getDiags()) { if (diag.getKind() == Kind.ERROR) { testOutput().println(DiagUtils.getDiagToPrint(diag, true)); } } } }
/** * Merges configurations from all the additionalConfigs and returns a normalized {@link Service} * instance. */ public static Service normalizeService( Service service, DiagCollector diagCollector, List<FileWrapper> additionalConfigs) { Model model = createModel(service, additionalConfigs); model.establishStage(Normalized.KEY); for (Diag diag : model.getDiagReporter().getDiagCollector().getDiags()) { diagCollector.addDiag(diag); } if (model.getDiagReporter().getDiagCollector().hasErrors()) { return null; } return model.getNormalizedConfig(); }
private void assertError(final String phrase) { Assert.assertTrue(model.getDiagReporter().getDiagCollector().hasErrors()); Assert.assertTrue( Iterators.any( model.getDiagReporter().getDiagCollector().getDiags().iterator(), new Predicate<Diag>() { @Override public boolean apply(Diag diag) { return diag.getKind() == Kind.ERROR && diag.toString().contains(phrase); } })); }
@Test public void resolvesWithErrors() { // Modify the descriptor injecting some errors. FileDescriptorSet.Builder builder = descriptors.toBuilder(); builder .getFileBuilder(0) .getMessageTypeBuilder(0) .getFieldBuilder(1) // required N n .setTypeName("undef_N"); builder .getFileBuilder(0) .getMessageTypeBuilder(0) .getFieldBuilder(2) // optional E e .setTypeName("undef_E"); Model testApi = Model.create(builder.build()); testApi.registerProcessor(new Resolver()); Truth.assertThat(testApi.establishStage(Resolved.KEY)).isFalse(); Truth.assertThat(testApi.getDiagReporter().getDiagCollector().getErrorCount()).isEqualTo(2); assertThat(testApi.getDiagReporter().getDiagCollector().getDiags().get(0).toString()) .contains("undef_N"); assertThat(testApi.getDiagReporter().getDiagCollector().getDiags().get(1).toString()) .contains("undef_E"); } }
@Test public void missingConfigSchemaVersion() { TestDataLocator locator = TestDataLocator.create(GapicConfigProducerTest.class); locator.addTestDataSource(CodegenTestUtil.class, "testsrc/common"); locator.addTestDataSource(CodegenTestUtil.class, "testsrc/libraryproto"); model = CodegenTestUtil.readModel( locator, tempDir, new String[] {"myproto.proto"}, new String[] {"myproto.yaml"}); ConfigProto configProto = CodegenTestUtil.readConfig( model.getDiagReporter().getDiagCollector(), locator, new String[] {"missing_config_schema_version.yaml"}); productConfig = GapicProductConfig.create(model, configProto, null, null, TargetLanguage.JAVA); Diag expectedError = Diag.error( SimpleLocation.TOPLEVEL, "config_schema_version field is required in GAPIC yaml."); assertThat(model.getDiagReporter().getDiagCollector().hasErrors()).isTrue(); assertThat(model.getDiagReporter().getDiagCollector().getDiags()).contains(expectedError); } }