@Test
  public void testSharePermissionEquals() {
    final SharePermission perm1 =
        new SharePermissionImpl(TestSharePermissionImpl.TYPE, TestSharePermissionImpl.PARAM1, null);
    final SharePermission perm2 =
        new SharePermissionImpl(
            TestSharePermissionImpl.ID,
            TestSharePermissionImpl.TYPE,
            TestSharePermissionImpl.PARAM1,
            null);
    final SharePermission perm3 =
        new SharePermissionImpl(
            TestSharePermissionImpl.TYPE,
            TestSharePermissionImpl.PARAM1,
            TestSharePermissionImpl.PARAM2);

    assertEquals(perm1, perm1);
    assertEquals(perm2, perm2);
    assertEquals(perm3, perm3);

    assertEquals(perm1, perm2);
    assertFalse(perm1.equals(perm3));
    assertFalse(perm2.equals(perm3));
    assertFalse(perm2.equals(null));
  }