37 lines
No EOL
1 KiB
Java
37 lines
No EOL
1 KiB
Java
package net.nosial.socialclient.classes;
|
|
|
|
import net.nosial.socialclient.classes.Utilities;
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
import java.util.regex.Pattern;
|
|
import java.util.HashSet;
|
|
import java.util.Set;
|
|
|
|
import static org.junit.jupiter.api.Assertions.*;
|
|
|
|
public class UtilitiesTest {
|
|
|
|
@Test
|
|
public void testRandomCrc32_formatValidity() {
|
|
String crcOutput = Utilities.randomCrc32();
|
|
assertNotNull(crcOutput);
|
|
assertTrue(crcOutput.matches("[a-f0-9]+"), "Expected hexadecimal output");
|
|
}
|
|
|
|
@Test
|
|
public void testRandomCrc32_lengthValidity() {
|
|
String crcOutput = Utilities.randomCrc32();
|
|
assertEquals(8, crcOutput.length(), "Expected 8 characters length");
|
|
}
|
|
|
|
@Test
|
|
public void testRandomCrc32_randomness() {
|
|
Set<String> randomResults = new HashSet<>();
|
|
|
|
for (int i = 0; i < 10_000; i++) {
|
|
randomResults.add(Utilities.randomCrc32());
|
|
}
|
|
|
|
assertTrue(randomResults.size() > 1, "Expected more than one different results");
|
|
}
|
|
} |