### Question:
AbstractBooleanPermission extends AbstractPermission<This> { public boolean implies(final This permission) { return permission != null; } protected  AbstractBooleanPermission(); boolean implies(final This permission); boolean equals(final This other); int hashCode(); AbstractPermissionCollection newPermissionCollection();  }### Answer:
@Test public void testImplies() { assertTrue(new SomePermission().implies(new SomePermission())); assertFalse(new SomePermission().implies(NoPermission.getInstance())); assertFalse(new SomePermission().implies(new SomeOtherPermission())); }