X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fde%2Fjuplo%2Fkafka%2FApplicationTests.java;h=a1501769255f2be2a0eb788045ec71812b7517b5;hb=595eab489c638b07072f6ec7e3c6f52000295931;hp=6a037eb7136ec1353e9fa11bb5dbee1c5ce63688;hpb=627763878b235ba168c7f55a1ef448851b027bfc;p=demos%2Fkafka%2Ftraining diff --git a/src/test/java/de/juplo/kafka/ApplicationTests.java b/src/test/java/de/juplo/kafka/ApplicationTests.java index 6a037eb..a150176 100644 --- a/src/test/java/de/juplo/kafka/ApplicationTests.java +++ b/src/test/java/de/juplo/kafka/ApplicationTests.java @@ -7,6 +7,7 @@ import org.apache.kafka.common.utils.Bytes; import org.springframework.beans.factory.annotation.Autowired; import java.util.*; + import java.util.function.Consumer; import java.util.stream.Collectors; import java.util.stream.IntStream; @@ -24,7 +25,7 @@ public class ApplicationTests extends GenericApplicationTests public ApplicationTests() { super(new ApplicationTestRecrodGenerator()); - ((ApplicationTestRecrodGenerator)recordGenerator).tests = this; + ((ApplicationTestRecrodGenerator) recordGenerator).tests = this; } @@ -34,10 +35,10 @@ public class ApplicationTests extends GenericApplicationTests final int[] numbers = {1, 77, 33, 2, 66, 666, 11}; final String[] dieWilden13 = - IntStream - .range(1, 14) - .mapToObj(i -> "seeräuber-" + i) - .toArray(i -> new String[i]); + IntStream + .range(1, 14) + .mapToObj(i -> "seeräuber-" + i) + .toArray(i -> new String[i]); final StringSerializer stringSerializer = new StringSerializer(); final Bytes calculateMessage = new Bytes(stringSerializer.serialize(TOPIC, "CALCULATE")); @@ -47,25 +48,25 @@ public class ApplicationTests extends GenericApplicationTests @Override public int generate( - boolean poisonPills, - boolean logicErrors, - Consumer> messageSender) + boolean poisonPills, + boolean logicErrors, + Consumer> messageSender) { counter = 0; state = - Arrays - .stream(dieWilden13) - .collect(Collectors.toMap( - seeräuber -> seeräuber, - seeräuber -> new LinkedList())); - - int number[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; - int message[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; + Arrays + .stream(dieWilden13) + .collect(Collectors.toMap( + seeräuber -> seeräuber, + seeräuber -> new LinkedList())); + + int number[] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}; + int message[] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}; int next = 0; for (int pass = 0; pass < 333; pass++) { - for (int i = 0; i<13; i++) + for (int i = 0; i < 13; i++) { String seeräuber = dieWilden13[i]; Bytes key = new Bytes(stringSerializer.serialize(TOPIC, seeräuber)); @@ -75,7 +76,7 @@ public class ApplicationTests extends GenericApplicationTests send(key, calculateMessage, fail(logicErrors, pass, counter), messageSender); state.get(seeräuber).add(new AdderResult(number[i], (number[i] + 1) * number[i] / 2)); // Pick next number to calculate - number[i] = numbers[next++%numbers.length]; + number[i] = numbers[next++ % numbers.length]; message[i] = 1; log.debug("Seeräuber {} will die Summe für {} berechnen", seeräuber, number[i]); } @@ -88,16 +89,16 @@ public class ApplicationTests extends GenericApplicationTests return counter; } - boolean fail (boolean logicErrors, int pass, int counter) + boolean fail(boolean logicErrors, int pass, int counter) { - return logicErrors && pass > 300 && counter%77 == 0; + return logicErrors && pass > 300 && counter % 77 == 0; } void send( - Bytes key, - Bytes value, - boolean fail, - Consumer> messageSender) + Bytes key, + Bytes value, + boolean fail, + Consumer> messageSender) { counter++; @@ -118,37 +119,37 @@ public class ApplicationTests extends GenericApplicationTests @Override public void assertBusinessLogic() { - for (int i=0; i - { - String user = entry.getKey(); - List resultsForUser = entry.getValue(); + .results + .entrySet() + .stream() + .forEach(entry -> + { + String user = entry.getKey(); + List resultsForUser = entry.getValue(); - for (int j=0; j < resultsForUser.size(); j++) + for (int j = 0; j < resultsForUser.size(); j++) + { + if (!(j < state.get(user).size())) { - if (!(j < state.get(user).size())) - { - break; - } - - assertThat(resultsForUser.get(j)) - .as("Unexpected results calculation %d of user %s", j, user) - .isEqualTo(state.get(user).get(j)); + break; } - assertThat(state.get(user)) - .as("More results calculated for user %s as expected", user) - .containsAll(resultsForUser); - }); + assertThat(resultsForUser.get(j)) + .as("Unexpected results calculation %d of user %s", j, user) + .isEqualTo(state.get(user).get(j)); + } + + assertThat(state.get(user)) + .as("More results calculated for user %s as expected", user) + .containsAll(resultsForUser); + }); } } } -} +} \ No newline at end of file