Skip to content

Commit

Permalink
fix: applied fixes for PR remarks
Browse files Browse the repository at this point in the history
  • Loading branch information
hannotify committed Apr 10, 2023
1 parent e74cb75 commit 778f50e
Show file tree
Hide file tree
Showing 15 changed files with 47 additions and 48 deletions.
6 changes: 3 additions & 3 deletions src/main/java/it/mulders/mcs/cli/Cli.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import it.mulders.mcs.search.SearchCommandHandler;
import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.printer.CoordinatePrinter;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;
import picocli.CommandLine;

import java.util.concurrent.Callable;
Expand Down Expand Up @@ -42,8 +42,8 @@ public ClassSearchCommand createClassSearchCommand() {
return new ClassSearchCommand();
}

private CopyToClipboardConfiguration createCopyToClipboardConfiguration(boolean copyToClipboard) {
return new CopyToClipboardConfiguration(
private CopyToClipboardConfig createCopyToClipboardConfiguration(boolean copyToClipboard) {
return new CopyToClipboardConfig(
COPY_SHORT_FLAG_NAME,
COPY_LONG_FLAG_NAME,
copyToClipboard);
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/it/mulders/mcs/search/SearchCommandHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import it.mulders.mcs.common.Result;
import it.mulders.mcs.search.printer.DelegatingOutputPrinter;
import it.mulders.mcs.search.printer.OutputPrinter;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;

import static it.mulders.mcs.search.Constants.MAX_LIMIT;

Expand All @@ -25,7 +25,7 @@ public SearchCommandHandler(final OutputPrinter coordinateOutput) {
this.outputPrinter = outputPrinter;
}

public void search(final SearchQuery query, final CopyToClipboardConfiguration configuration) {
public void search(final SearchQuery query, final CopyToClipboardConfig configuration) {
performSearch(query)
.map(response -> performAdditionalSearch(query, response))
.ifPresent(response -> printResponse(query, response, configuration));
Expand Down Expand Up @@ -66,7 +66,7 @@ private Result<SearchResponse.Response> performSearch(final SearchQuery query) {
}

private void printResponse(final SearchQuery query, final SearchResponse.Response response,
final CopyToClipboardConfiguration configuration) {
final CopyToClipboardConfig configuration) {
outputPrinter.print(query, response, System.out, configuration);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.SearchResponse;
import it.mulders.mcs.search.printer.clipboard.Clipboard;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardPrinter;
import it.mulders.mcs.search.printer.clipboard.SystemClipboard;

Expand All @@ -17,7 +17,7 @@ public sealed interface CoordinatePrinter extends OutputPrinter, CopyToClipboard

@Override
default void print(final SearchQuery query, final SearchResponse.Response response, final PrintStream stream,
final CopyToClipboardConfiguration copyToClipboardConfiguration) {
final CopyToClipboardConfig copyToClipboardConfig) {
if (response.numFound() != 1) {
throw new IllegalArgumentException("Search response with more than one result not expected here");
}
Expand All @@ -29,10 +29,10 @@ default void print(final SearchQuery query, final SearchResponse.Response respon
stream.println(coordinates);
stream.println();

if (copyToClipboardConfiguration.copyOnClipboardEnabled()) {
if (copyToClipboardConfig.copyToClipboardEnabled()) {
copyToClipboard(stream, new SystemClipboard(), coordinates);
} else {
printCopyToClipboardHint(stream, copyToClipboardConfiguration);
printCopyToClipboardHint(stream, copyToClipboardConfig);
}

stream.println();
Expand All @@ -44,10 +44,10 @@ private static void copyToClipboard(PrintStream stream, Clipboard clipboard, Str
}

private static void printCopyToClipboardHint(PrintStream stream,
CopyToClipboardConfiguration copyToClipboardConfiguration) {
CopyToClipboardConfig copyToClipboardConfig) {
stream.printf("(To directly copy this snippet to the clipboard, run mcs with the %s or %s flag.)%n",
copyToClipboardConfiguration.shortFlagName(),
copyToClipboardConfiguration.longFlagName());
copyToClipboardConfig.shortFlagName(),
copyToClipboardConfig.longFlagName());
}

private String first(final String... values) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.SearchResponse;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;

import java.io.PrintStream;

Expand All @@ -27,10 +27,10 @@ public DelegatingOutputPrinter(final OutputPrinter coordinateOutput) {

@Override
public void print(final SearchQuery query, final SearchResponse.Response response, final PrintStream stream,
final CopyToClipboardConfiguration copyToClipboardConfiguration) {
final CopyToClipboardConfig copyToClipboardConfig) {
switch (response.numFound()) {
case 0 -> noOutput.print(query, response, stream, null);
case 1 -> coordinateOutput.print(query, response, stream, copyToClipboardConfiguration);
case 1 -> coordinateOutput.print(query, response, stream, copyToClipboardConfig);
default -> tabularSearchOutput.print(query, response, stream, null);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@

import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.SearchResponse;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;

import java.io.PrintStream;

public class NoOutputPrinter implements OutputPrinter {
@Override
public void print(final SearchQuery query, final SearchResponse.Response response, final PrintStream stream,
final CopyToClipboardConfiguration configuration) {
final CopyToClipboardConfig configuration) {
if (response.numFound() != 0) {
throw new IllegalArgumentException("Search response with any result not expected here");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.SearchResponse;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;

import java.io.PrintStream;

public interface OutputPrinter {
void print(final SearchQuery query,
final SearchResponse.Response response,
final PrintStream stream,
final CopyToClipboardConfiguration configuration);
final CopyToClipboardConfig configuration);
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.SearchResponse;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;
import picocli.CommandLine;
import picocli.CommandLine.Help;
import picocli.CommandLine.Help.Ansi;
Expand Down Expand Up @@ -31,7 +31,7 @@ private String header(final SearchQuery query, final SearchResponse.Response res
}

public void print(final SearchQuery query, final SearchResponse.Response response, final PrintStream stream,
final CopyToClipboardConfiguration configuration) {
final CopyToClipboardConfig configuration) {
stream.println(CommandLine.Help.Ansi.AUTO.string(header(query, response)));

var colorScheme = Help.defaultColorScheme(Ansi.AUTO);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package it.mulders.mcs.search.printer.clipboard;

public record CopyToClipboardConfig(String shortFlagName, String longFlagName, boolean copyToClipboardEnabled) {
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@

public interface CopyToClipboardPrinter {
void print(final SearchQuery query, final SearchResponse.Response response, final PrintStream stream,
final CopyToClipboardConfiguration copyToClipboardConfiguration);
final CopyToClipboardConfig copyToClipboardConfig);
}
4 changes: 2 additions & 2 deletions src/test/java/it/mulders/mcs/cli/CliTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import it.mulders.mcs.search.Constants;
import it.mulders.mcs.search.SearchCommandHandler;
import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;
import org.assertj.core.api.WithAssertions;
import org.junit.jupiter.api.DisplayNameGeneration;
import org.junit.jupiter.api.DisplayNameGenerator;
Expand Down Expand Up @@ -74,7 +74,7 @@ void accepts_full_name_parameter() {
}

private void verifySearchExecution(SearchQuery query, String... args) {
var dontCopyToClipboard = new CopyToClipboardConfiguration(Cli.COPY_SHORT_FLAG_NAME, Cli.COPY_LONG_FLAG_NAME,
var dontCopyToClipboard = new CopyToClipboardConfig(Cli.COPY_SHORT_FLAG_NAME, Cli.COPY_LONG_FLAG_NAME,
false);

try (MockedConstruction<SearchCommandHandler> mocked = Mockito.mockConstruction(SearchCommandHandler.class)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import it.mulders.mcs.common.Result;
import it.mulders.mcs.search.printer.OutputPrinter;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;
import org.assertj.core.api.WithAssertions;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.DisplayNameGeneration;
Expand All @@ -18,7 +18,7 @@
@DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class)
class SearchCommandHandlerTest implements WithAssertions {
private final OutputPrinter outputPrinter = mock(OutputPrinter.class);
private final CopyToClipboardConfiguration dontCopyToClipboard = new CopyToClipboardConfiguration(
private final CopyToClipboardConfig dontCopyToClipboard = new CopyToClipboardConfig(
"-scht", "--search-command-handler-test", false);
private final SearchResponse.Response wildcardResponse = new SearchResponse.Response(
0,
Expand Down Expand Up @@ -57,7 +57,7 @@ class WildcardSearchTest {
void should_invoke_search_client() {
handler.search(SearchQuery.search("plexus-utils").build(), dontCopyToClipboard);
verify(outputPrinter).print(any(WildcardSearchQuery.class), eq(wildcardResponse), any(),
any(CopyToClipboardConfiguration.class));
any(CopyToClipboardConfig.class));
}
}

Expand All @@ -74,15 +74,15 @@ void should_reject_search_terms_in_wrong_format() {
void should_invoke_search_client_with_groupId_and_artifactId() {
handler.search(SearchQuery.search("org.codehaus.plexus:plexus-utils").build(), dontCopyToClipboard);
verify(outputPrinter).print(any(CoordinateQuery.class), eq(twoPartCoordinateResponse), any(),
any(CopyToClipboardConfiguration.class));
any(CopyToClipboardConfig.class));
}

@Test
void should_invoke_search_client_with_groupId_and_artifactId_and_version() {
handler.search(SearchQuery.search("org.codehaus.plexus:plexus-utils:3.4.1").build(),
dontCopyToClipboard);
verify(outputPrinter).print(any(CoordinateQuery.class), eq(threePartCoordinateResponse), any(),
any(CopyToClipboardConfiguration.class));
any(CopyToClipboardConfig.class));
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.SearchResponse;
import it.mulders.mcs.search.printer.clipboard.Clipboard;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;
import it.mulders.mcs.search.printer.clipboard.SystemClipboard;
import org.assertj.core.api.WithAssertions;
import org.junit.jupiter.params.ParameterizedTest;
Expand Down Expand Up @@ -73,7 +73,7 @@ private static Stream<Arguments> coordinatePrinters() {
@ParameterizedTest
@MethodSource("coordinatePrinters")
void should_print_snippet(CoordinatePrinter printer, String expected) {
var dontCopyToClipboard = new CopyToClipboardConfiguration(
var dontCopyToClipboard = new CopyToClipboardConfig(
"-cpt", "--coordinate-printer-test", false);
printer.print(QUERY, RESPONSE, new PrintStream(buffer), dontCopyToClipboard);
var xml = buffer.toString();
Expand All @@ -84,30 +84,29 @@ void should_print_snippet(CoordinatePrinter printer, String expected) {
@ParameterizedTest
@MethodSource("coordinatePrinters")
void should_print_clipboard_hint(CoordinatePrinter printer, String expected) {
var dontCopyToClipboard = new CopyToClipboardConfiguration(
var dontCopyToClipboard = new CopyToClipboardConfig(
"-cpt", "--coordinate-printer-test", false);
printer.print(QUERY, RESPONSE, new PrintStream(buffer), dontCopyToClipboard);
var output = buffer.toString();

assertThat(output).containsIgnoringWhitespaces(String.format(
"(To directly copy this snippet to the clipboard, run mcs with the %s or %s flag.)",
dontCopyToClipboard.shortFlagName(), dontCopyToClipboard.longFlagName()));
assertThat(output).containsIgnoringWhitespaces("To directly copy this snippet to the clipboard");
assertThat(output).containsIgnoringWhitespaces("-cpt");
assertThat(output).containsIgnoringWhitespaces("--coordinate-printer-test");

assertThat(output).doesNotContain("Snippet copied to clipboard.");
}

@ParameterizedTest
@MethodSource("coordinatePrinters")
void should_copy_to_clipboard_and_not_print_clipboard_hint(CoordinatePrinter printer, String expected) {
var copyToClipboard = new CopyToClipboardConfiguration(
var copyToClipboard = new CopyToClipboardConfig(
"-cpt", "--coordinate-printer-test", true);
printer.print(QUERY, RESPONSE, new PrintStream(buffer), copyToClipboard);
var output = buffer.toString();

assertThat(clipboard.paste()).isEqualToIgnoringWhitespace(expected);

assertThat(output).contains("Snippet copied to clipboard.");
assertThat(output).doesNotContain(String.format(
"(To directly copy this snippet to the clipboard, run mcs with the -%s or --%s flag.)",
copyToClipboard.shortFlagName(), copyToClipboard.longFlagName()));
assertThat(output).doesNotContain("To directly copy this snippet to the clipboard");
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.SearchResponse;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;
import org.apache.commons.io.output.NullOutputStream;
import org.assertj.core.api.WithAssertions;
import org.junit.jupiter.api.DisplayNameGeneration;
Expand Down Expand Up @@ -38,7 +38,7 @@ void no_results_delegate() {

@Test
void single_result_delegate() {
var configuration = new CopyToClipboardConfiguration("-dopt",
var configuration = new CopyToClipboardConfig("-dopt",
"--delegating-output-printer-test", true);

printer.print(query, responseWithResult(1), outputStream, configuration);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import it.mulders.mcs.search.SearchQuery;
import it.mulders.mcs.search.SearchResponse;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfiguration;
import it.mulders.mcs.search.printer.clipboard.CopyToClipboardConfig;
import org.assertj.core.api.WithAssertions;
import org.junit.jupiter.api.DisplayNameGeneration;
import org.junit.jupiter.api.DisplayNameGenerator;
Expand All @@ -18,7 +18,7 @@
class TabularOutputPrinterTest implements WithAssertions {
private final TabularOutputPrinter output = new TabularOutputPrinter();
private final SearchQuery query = SearchQuery.search("org.codehaus.plexus:plexus-utils").build();
private final CopyToClipboardConfiguration dontCopyToClipboard = new CopyToClipboardConfiguration(
private final CopyToClipboardConfig dontCopyToClipboard = new CopyToClipboardConfig(
"-topt", "--tabular-output-printer-test", false);

@Test
Expand Down

0 comments on commit 778f50e

Please sign in to comment.