From 81abe21d54a99dfa0e0b6691059e791708dad72b Mon Sep 17 00:00:00 2001 From: Andreas Hufler Date: Tue, 11 Mar 2025 09:35:11 +0100 Subject: [PATCH] add helper for easier unique string generation --- .../testing/testdata/base/FakerExtended.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/it/aboutbits/springboot/testing/testdata/base/FakerExtended.java b/src/main/java/it/aboutbits/springboot/testing/testdata/base/FakerExtended.java index 5daa705..c875d5a 100644 --- a/src/main/java/it/aboutbits/springboot/testing/testdata/base/FakerExtended.java +++ b/src/main/java/it/aboutbits/springboot/testing/testdata/base/FakerExtended.java @@ -1,6 +1,7 @@ package it.aboutbits.springboot.testing.testdata.base; import it.aboutbits.springboot.toolbox.type.identity.EntityId; +import lombok.NonNull; import net.datafaker.Faker; import net.datafaker.service.FakeValuesService; import net.datafaker.service.FakerContext; @@ -36,7 +37,7 @@ public FakerExtended(FakeValuesService fakeValuesService, FakerContext context) super(fakeValuesService, context); } - public > T randomEnumValue(Class enumClass) { + public > T randomEnumValue(@NonNull Class enumClass) { var values = enumClass.getEnumConstants(); if (values.length == 0) { throw new IllegalArgumentException("Enum class must have at least one value"); @@ -44,15 +45,19 @@ public > T randomEnumValue(Class enumClass) { return values[this.random().nextInt(values.length)]; } - public > T randomEntityId(LongFunction constructor) { + public > T randomEntityId(@NonNull LongFunction constructor) { return constructor.apply( - super.random().nextInt(99999) + super.random().nextInt(9999999) ); } - public > T randomEntityId(Function constructor) { + public > T randomEntityId(@NonNull Function constructor) { return constructor.apply( super.internet().uuid() ); } + + public String unique(@NonNull String value) { + return value + "_" + super.random().nextInt(9999999); + } }