ShiroWildcardPermission implements Permission { static Permission of(String permissionString) { return new ShiroWildcardPermission(permissionString); } private  ShiroWildcardPermission(final String permissionString); @Override boolean implies(Permission requiredPermission); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString();  }
@Test(expectedExceptions = InvalidPermissionStringException.class) public void test_of_null() { ShiroWildcardPermission.of(null); }
@Test(expectedExceptions = InvalidPermissionStringException.class) public void test_of_empty() { ShiroWildcardPermission.of(""); }
@Test(expectedExceptions = InvalidPermissionStringException.class) public void test_of_blank() { ShiroWildcardPermission.of(" "); }
@Test(expectedExceptions = InvalidPermissionStringException.class) public void test_of_onlyColons() { ShiroWildcardPermission.of("::"); }
@Test(expectedExceptions = InvalidPermissionStringException.class) public void test_of_onlyCommas() { ShiroWildcardPermission.of("a:,:b"); }
@Test(expectedExceptions = InvalidPermissionStringException.class) public void test_of_invalidWildcard() { ShiroWildcardPermission.of("a:beta*"); }
@Test public void test_of_caseInsensitive() { Permission p1 = ShiroWildcardPermission.of("something"); Permission p2 = ShiroWildcardPermission.of("SOMETHING"); assertEquals(p1, p2); }