Пример #1
0
  private void compare(
      String name,
      LombokTestSource expected,
      String actualFile,
      LinkedHashSet<CompilerMessage> actualMessages,
      boolean printErrors,
      boolean skipCompareContent)
      throws Throwable {
    if (!skipCompareContent)
      try {
        compareContent(name, expected.getContent(), actualFile);
      } catch (Throwable e) {
        if (printErrors) {
          System.out.println("***** " + name + " *****");
          System.out.println(e.getMessage());
          System.out.println("**** Expected ******");
          System.out.println(expected.getContent());
          System.out.println("****  Actual  ******");
          System.out.println(actualFile);
          if (actualMessages != null && !actualMessages.isEmpty()) {
            System.out.println("**** Actual Errors *****");
            for (CompilerMessage actualMessage : actualMessages) {
              System.out.println(actualMessage);
            }
          }
          System.out.println("*******************");
        }
        if (dumpActualFilesHere != null) {
          dumpToFile(new File(dumpActualFilesHere, name), actualFile);
        }
        throw e;
      }

    try {
      compareMessages(name, expected.getMessages(), actualMessages);
    } catch (Throwable e) {
      if (printErrors) {
        System.out.println("***** " + name + " *****");
        System.out.println(e.getMessage());
        System.out.println("**** Expected ******");
        for (CompilerMessageMatcher expectedMessage : expected.getMessages()) {
          System.out.println(expectedMessage);
        }
        System.out.println("****  Actual  ******");
        for (CompilerMessage actualMessage : actualMessages) {
          System.out.println(actualMessage);
        }
        System.out.println("*******************");
      }
      if (dumpActualFilesHere != null) {
        dumpToFile(new File(dumpActualFilesHere, name + ".messages"), actualMessages);
      }
      throw e;
    }
  }