Skip to content

Commit

Permalink
Merge pull request #3692 from jlerbsc/master
Browse files Browse the repository at this point in the history
Fix issue #3678 Function accepts a configuration but it does not do anything
  • Loading branch information
jlerbsc committed Sep 15, 2022
2 parents 18893cb + 6379ee9 commit 903bb7e
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import static com.github.javaparser.printer.configuration.Indentation.IndentType.TABS_WITH_SPACE_ALIGN;
import static com.github.javaparser.utils.TestUtils.assertEqualsStringIgnoringEol;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;

import java.util.Optional;
Expand Down Expand Up @@ -351,6 +352,21 @@ void indentWithTabsAsFarAsPossible() {
"\t}\n" +
"}\n", printed);
}

@Test
void initializeWithSpecificConfiguration() {
CompilationUnit cu = parse("class Foo { // this is a comment \n"
+ "}");
PrinterConfiguration config = new DefaultPrinterConfiguration()
.removeOption(new DefaultConfigurationOption(ConfigOption.PRINT_COMMENTS));

Printer printer = new DefaultPrettyPrinter(config);
assertFalse(printer.getConfiguration().get(new DefaultConfigurationOption(ConfigOption.PRINT_COMMENTS)).isPresent());
String printed = printer.print(cu);
assertEqualsStringIgnoringEol("class Foo {\n"
+ "}\n", printed);
}


@Test
void indentWithTabsAlignWithSpaces() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@

import com.github.javaparser.ast.Node;
import com.github.javaparser.ast.visitor.VoidVisitor;
import com.github.javaparser.printer.configuration.PrinterConfiguration;
import com.github.javaparser.printer.configuration.DefaultPrinterConfiguration;
import com.github.javaparser.printer.configuration.PrinterConfiguration;

/**
* Pretty printer for AST nodes.
Expand All @@ -41,11 +41,6 @@ public class DefaultPrettyPrinter implements Printer {
// static methods

private static Function<PrinterConfiguration, VoidVisitor<Void>> createDefaultVisitor() {
PrinterConfiguration configuration = createDefaultConfiguration();
return createDefaultVisitor(configuration);
}

private static Function<PrinterConfiguration, VoidVisitor<Void>> createDefaultVisitor(PrinterConfiguration configuration) {
return (config) -> new DefaultPrettyPrinterVisitor(config, new SourcePrinter(config));
}

Expand All @@ -59,15 +54,15 @@ private static PrinterConfiguration createDefaultConfiguration() {
* Build a new DefaultPrettyPrinter with a default configuration and a default factory
*/
public DefaultPrettyPrinter() {
this(createDefaultVisitor(), createDefaultConfiguration() );
this(createDefaultConfiguration() );
}

/**
* Build a new DefaultPrettyPrinter with a configuration and a default factory
* @param configuration
*/
public DefaultPrettyPrinter(PrinterConfiguration configuration) {
this(createDefaultVisitor(configuration), configuration );
this(createDefaultVisitor(), configuration );
}

/**
Expand Down

0 comments on commit 903bb7e

Please sign in to comment.