mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-05 18:27:17 +01:00
Add unit tests for org.bukkit.util.StringUtil
By: Wesley Wolfe <weswolf@aol.com>
This commit is contained in:
parent
216df9a3d5
commit
a323c9fd8c
2 changed files with 147 additions and 0 deletions
|
@ -0,0 +1,86 @@
|
|||
package org.bukkit.util;
|
||||
|
||||
import static org.hamcrest.Matchers.*;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Parameterized;
|
||||
import org.junit.runners.Parameterized.Parameter;
|
||||
import org.junit.runners.Parameterized.Parameters;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
@RunWith(Parameterized.class)
|
||||
public class StringUtilStartsWithTest {
|
||||
|
||||
@Parameters(name= "{index}: {0} startsWith {1} == {2}")
|
||||
public static List<Object[]> data() {
|
||||
return ImmutableList.<Object[]>of(
|
||||
new Object[] {
|
||||
"Apple",
|
||||
"Apples",
|
||||
false
|
||||
},
|
||||
new Object[] {
|
||||
"Apples",
|
||||
"Apple",
|
||||
true
|
||||
},
|
||||
new Object[] {
|
||||
"Apple",
|
||||
"Apple",
|
||||
true
|
||||
},
|
||||
new Object[] {
|
||||
"Apple",
|
||||
"apples",
|
||||
false
|
||||
},
|
||||
new Object[] {
|
||||
"apple",
|
||||
"Apples",
|
||||
false
|
||||
},
|
||||
new Object[] {
|
||||
"apple",
|
||||
"apples",
|
||||
false
|
||||
},
|
||||
new Object[] {
|
||||
"Apples",
|
||||
"apPL",
|
||||
true
|
||||
},
|
||||
new Object[] {
|
||||
"123456789",
|
||||
"1234567",
|
||||
true
|
||||
},
|
||||
new Object[] {
|
||||
"",
|
||||
"",
|
||||
true
|
||||
},
|
||||
new Object[] {
|
||||
"string",
|
||||
"",
|
||||
true
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
@Parameter(0)
|
||||
public String base;
|
||||
@Parameter(1)
|
||||
public String prefix;
|
||||
@Parameter(2)
|
||||
public boolean result;
|
||||
|
||||
@Test
|
||||
public void testFor() {
|
||||
assertThat(base + " starts with " + prefix + ": " + result, StringUtil.startsWithIgnoreCase(base, prefix), is(result));
|
||||
}
|
||||
}
|
61
paper-api/src/test/java/org/bukkit/util/StringUtilTest.java
Normal file
61
paper-api/src/test/java/org/bukkit/util/StringUtilTest.java
Normal file
|
@ -0,0 +1,61 @@
|
|||
package org.bukkit.util;
|
||||
|
||||
import static org.hamcrest.Matchers.*;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
public class StringUtilTest {
|
||||
|
||||
@Test(expected=NullPointerException.class)
|
||||
public void nullPrefixTest() {
|
||||
StringUtil.startsWithIgnoreCase("String", null);
|
||||
}
|
||||
|
||||
@Test(expected=IllegalArgumentException.class)
|
||||
public void nullStringTest() {
|
||||
StringUtil.startsWithIgnoreCase(null, "String");
|
||||
}
|
||||
|
||||
@Test(expected=IllegalArgumentException.class)
|
||||
public void nullCollectionTest() {
|
||||
StringUtil.copyPartialMatches("Token", ImmutableList.<String>of(), null);
|
||||
}
|
||||
|
||||
@Test(expected=IllegalArgumentException.class)
|
||||
public void nullIterableTest() {
|
||||
StringUtil.copyPartialMatches("Token", null, new ArrayList<String>());
|
||||
}
|
||||
|
||||
@Test(expected=IllegalArgumentException.class)
|
||||
public void nullTokenTest() {
|
||||
StringUtil.copyPartialMatches(null, ImmutableList.<String>of(), new ArrayList<String>());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void copyTokenTest() {
|
||||
String token = "ab";
|
||||
Iterable<String> original = ImmutableList.of("ab12", "aC561", "AB5195", "Ab76", "", "a");
|
||||
List<String> expected = ImmutableList.of("ab12", "AB5195", "Ab76" );
|
||||
List<String> list = new ArrayList<String>();
|
||||
assertThat(StringUtil.copyPartialMatches(token, original, list), is(expected));
|
||||
assertThat(StringUtil.copyPartialMatches(token, original, list), is(sameInstance(list)));
|
||||
assertThat(list.size(), is(expected.size() * 2));
|
||||
}
|
||||
|
||||
@Test(expected=UnsupportedOperationException.class)
|
||||
public void copyUnsupportedTest() {
|
||||
StringUtil.copyPartialMatches("token", ImmutableList.of("token1", "token2"), ImmutableList.of());
|
||||
}
|
||||
|
||||
@Test(expected=IllegalArgumentException.class)
|
||||
public void copyNullTest() {
|
||||
StringUtil.copyPartialMatches("token", Arrays.asList("token1", "token2", null), new ArrayList<String>());
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue