### Question:
PrincipalEntity { public void removePrivilege(PrivilegeEntity privilege) { privileges.remove(privilege); }  Long getId(); void setId(Long id); PrincipalTypeEntity getPrincipalType(); void setPrincipalType(PrincipalTypeEntity principalType); Set<PrivilegeEntity> getPrivileges(); void setPrivileges(Set<PrivilegeEntity> privileges); void removePrivilege(PrivilegeEntity privilege); @Override boolean equals(Object o); @Override int hashCode();  }### Answer:
@Test public void testRemovePrivilege() throws Exception { Set<PrivilegeEntity> privileges = new HashSet<>(); PrivilegeEntity privilegeEntity1 = new PrivilegeEntity(); privilegeEntity1.setId(1); privileges.add(privilegeEntity1); PrivilegeEntity privilegeEntity2 = new PrivilegeEntity(); privilegeEntity2.setId(2); privileges.add(privilegeEntity2); PrincipalEntity entity = new PrincipalEntity(); entity.setPrivileges(privileges); entity.removePrivilege(privilegeEntity2); privileges = entity.getPrivileges(); Assert.assertEquals(1, privileges.size()); privileges.contains(privilegeEntity1); }