### Question:
OffersDeleteRequest implements RestRequest { @Override public Map<String, String> parameters() { Map<String, String> parameters = new HashMap<>(); if (Objects.nonNull(eventIds) && !eventIds.isEmpty()) { List<String> ids = eventIds.stream() .map(String::valueOf) .collect(Collectors.toList()); parameters.put("event-ids", String.join(",", ids)); } if (Objects.nonNull(marketIds) && !marketIds.isEmpty()) { List<String> ids = marketIds.stream() .map(String::valueOf) .collect(Collectors.toList()); parameters.put("market-ids", String.join(",", ids)); } if (Objects.nonNull(runnersIds) && !runnersIds.isEmpty()) { List<String> ids = runnersIds.stream() .map(String::valueOf) .collect(Collectors.toList()); parameters.put("runner-ids", String.join(",", ids)); } if (Objects.nonNull(offerIds) && !offerIds.isEmpty()) { List<String> ids = offerIds.stream() .map(String::valueOf) .collect(Collectors.toList()); parameters.put("offer-ids", String.join(",", ids)); } return parameters; } private  OffersDeleteRequest(OffersDeleteRequest.Builder builder); Set<Long> getEventIds(); Set<Long> getMarketIds(); Set<Long> getRunnersIds(); Set<Long> getOfferIds(); @Override String resourcePath(); @Override Map<String, String> parameters(); @Override String toString();  }### Answer:
@Test @DisplayName("Check query parameters") void parametersTest() { assertThat(unit.parameters()) .extractingFromEntries(Map.Entry::getKey, Map.Entry::getValue) .contains( tuple("event-ids", eventIds.stream().map(String::valueOf).collect(Collectors.joining(","))), tuple("market-ids", marketIds.stream().map(String::valueOf).collect(Collectors.joining(","))), tuple("runner-ids", runnersIds.stream().map(String::valueOf).collect(Collectors.joining(","))), tuple("offer-ids", offersIds.stream().map(String::valueOf).collect(Collectors.joining(","))) ); assertThat(emptyUnit.parameters()).doesNotContainKeys("event-ids", "market-ids", "runner-ids", "offer-ids"); }