Skip to content

Commit cc67d29

Browse files
committed
Add tests for producer/consumer name strategy
In performance tool.
1 parent 295a10d commit cc67d29

File tree

2 files changed

+29
-2
lines changed

2 files changed

+29
-2
lines changed

src/test/java/com/rabbitmq/stream/perf/StreamPerfTestTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ void offsetShouldBeStoredWhenOptionIsEnabled() throws Exception {
187187
void offsetShouldNotBeStoredWhenOptionIsNotEnabled() throws Exception {
188188
Future<?> run = run(builder());
189189
waitUntilStreamExists(s);
190-
String consumerName = s + "-0"; // convention
190+
String consumerName = s + "-0"; // default value when offset tracking is enabled
191191
assertThat(client.queryOffset(consumerName, s)).isZero();
192192
waitOneSecond();
193193
assertThat(client.queryOffset(consumerName, s)).isZero();
@@ -211,7 +211,7 @@ void publishingSequenceShouldBeStoredWhenProducerNamesAreSet() throws Exception
211211
void publishingSequenceShouldNotBeStoredWhenProducerNamesAreNotSet() throws Exception {
212212
Future<?> run = run(builder());
213213
waitUntilStreamExists(s);
214-
String producerName = s + "-0"; // convention
214+
String producerName = s + "-0"; // shooting in the dark here
215215
assertThat(client.queryPublisherSequence(producerName, s)).isZero();
216216
waitOneSecond();
217217
assertThat(client.queryPublisherSequence(producerName, s)).isZero();

src/test/java/com/rabbitmq/stream/perf/UtilsTest.java

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import com.rabbitmq.stream.OffsetSpecification;
2323
import com.rabbitmq.stream.compression.Compression;
2424
import com.rabbitmq.stream.perf.Utils.CompressionTypeConverter;
25+
import com.rabbitmq.stream.perf.Utils.NameStrategyConverter;
2526
import com.rabbitmq.stream.perf.Utils.PatternNameStrategy;
2627
import com.rabbitmq.stream.perf.Utils.RangeTypeConverter;
2728
import com.rabbitmq.stream.perf.Utils.SniServerNamesConverter;
@@ -30,6 +31,7 @@
3031
import java.util.List;
3132
import java.util.Locale;
3233
import java.util.Random;
34+
import java.util.UUID;
3335
import java.util.function.BiFunction;
3436
import java.util.stream.IntStream;
3537
import java.util.stream.LongStream;
@@ -147,6 +149,31 @@ void consumerNameStrategy(String pattern, String expected) {
147149
assertThat(strategy.apply("s1", 2)).isEqualTo(expected);
148150
}
149151

152+
@Test
153+
void producerConsumerNameStrategyConverterShouldReturnUuidWhenAskedForUuid() {
154+
NameStrategyConverter nameStrategyConverter = new NameStrategyConverter();
155+
BiFunction<String, Integer, String> nameStrategy = nameStrategyConverter.convert("uuid");
156+
String name = nameStrategy.apply("stream", 1);
157+
UUID.fromString(name);
158+
assertThat(nameStrategy.apply("stream", 1)).isNotEqualTo(name);
159+
}
160+
161+
@Test
162+
void producerConsumerNameStrategyConverterShouldReturnEmptyStringWhenPatternIsEmptyString() {
163+
NameStrategyConverter nameStrategyConverter = new NameStrategyConverter();
164+
BiFunction<String, Integer, String> nameStrategy = nameStrategyConverter.convert("");
165+
assertThat(nameStrategy.apply("stream", 1)).isEmpty();
166+
assertThat(nameStrategy.apply("stream", 2)).isEmpty();
167+
}
168+
169+
@Test
170+
void producerConsumerNameStrategyConverterShouldReturnPatternStrategyWhenAsked() {
171+
NameStrategyConverter nameStrategyConverter = new NameStrategyConverter();
172+
BiFunction<String, Integer, String> nameStrategy = nameStrategyConverter.convert("stream-%s-consumer-%d");
173+
assertThat(nameStrategy).isInstanceOf(PatternNameStrategy.class);
174+
assertThat(nameStrategy.apply("s1", 2)).isEqualTo("stream-s1-consumer-2");
175+
}
176+
150177
@Test
151178
void sniServerNamesConverter() throws Exception {
152179
SniServerNamesConverter converter = new SniServerNamesConverter();

0 commit comments

Comments
 (0)