From 199a46584a8d9ab543ac1dd6bb0b505192b64f73 Mon Sep 17 00:00:00 2001 From: kaloyane <kaloyane> Date: Wed, 22 Jun 2011 14:55:01 +0000 Subject: [PATCH] add test to demonstrate LMS-2330 SVN: 21822 --- .../common/utilities/StringUtilitiesTest.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/common/sourceTest/java/ch/systemsx/cisd/common/utilities/StringUtilitiesTest.java b/common/sourceTest/java/ch/systemsx/cisd/common/utilities/StringUtilitiesTest.java index e212805aed6..19893572531 100644 --- a/common/sourceTest/java/ch/systemsx/cisd/common/utilities/StringUtilitiesTest.java +++ b/common/sourceTest/java/ch/systemsx/cisd/common/utilities/StringUtilitiesTest.java @@ -19,11 +19,14 @@ package ch.systemsx.cisd.common.utilities; import static org.testng.AssertJUnit.assertEquals; import static org.testng.AssertJUnit.assertTrue; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import org.testng.annotations.Test; +import ch.systemsx.cisd.common.utilities.StringUtilities.IUniquenessChecker; + /** * Test cases for the {@link StringUtilities}. * @@ -100,4 +103,29 @@ public class StringUtilitiesTest assertEquals("[abc]", StringUtilities.tokenize("abc").toString()); assertEquals("[a, b, c, d]", StringUtilities.tokenize(" a,b c\n d ").toString()); } + + @Test + public void testCreateUniqueString() + { + final String PATTERN_PREFIX = "email"; + final List<String> existing = new ArrayList<String>(); + existing.add(PATTERN_PREFIX); + for (int i = 0; i < 20; i++) + { + existing.add(PATTERN_PREFIX + i); + } + + String nextUnique = + StringUtilities.createUniqueString(PATTERN_PREFIX, new IUniquenessChecker() + { + + public boolean isUnique(String str) + { + return false == existing.contains(str); + } + }); + + // assertEquals("email20", nextUnique); + assertEquals("email110", nextUnique); + } } -- GitLab