- @Test
- public void testMD5Hash() throws Exception {
- // empty string
- createAndAssertHash("", "d41d8cd98f00b204e9800998ecf8427e");
-
- // non-empty string
- createAndAssertHash("The Guardian", "69b929ae473ed732d5fb8e0a55a8dc8d");
-
- // the same hash for the same string
- createAndAssertHash("The Independent", "db793706d70c37dcc16454fa8eb21b1c");
- createAndAssertHash("The Independent", "db793706d70c37dcc16454fa8eb21b1c"); // one more time
-
- // different strings must have different hashes
- createAndAssertHash("orange", "fe01d67a002dfa0f3ac084298142eccd");
- createAndAssertHash("yellow", "d487dd0b55dfcacdd920ccbdaeafa351");
- }
-
- //TODO: IllegalArgumentException would be better
- @Test(expected = RuntimeException.class)
- public void testMD5HashInvalidInput() throws Exception {
- Util.md5String(null);
- }
-
- @Test
- public void testWildcardToRegex() throws Exception {
- // empty wildcard string
- createAndAssertRegex("", "^$");
-
- // wildcard string is a char to be replaced
- createAndAssertRegex("*", "^.*$");
- createAndAssertRegex("?", "^.$");
- final String relevantChars = "()[]$^.{}|\\";
- for (final char c : relevantChars.toCharArray()) {
- final char oneChar[] = {c};
- final String wildcardStr = new String(oneChar);
- final String expectedRegex = "^\\" + c + "$";
- createAndAssertRegex(wildcardStr, expectedRegex);
- }
-
- // wildcard string consists of more chars
- createAndAssertRegex("a", "^a$");
- createAndAssertRegex("aBc", "^aBc$");
- createAndAssertRegex("a1b2C34", "^a1b2C34$");
- createAndAssertRegex("*?()[]$^.{}|\\X", "^.*.\\(\\)\\[\\]\\$\\^\\.\\{\\}\\|\\\\X$");
- createAndAssertRegex("a*BB?37|42$", "^a.*BB.37\\|42\\$$");
- }
-