2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
9 package eu
.etaxonomy
.cdm
.model
.rights
;
11 import static org
.junit
.Assert
.assertEquals
;
12 import static org
.junit
.Assert
.assertNotNull
;
14 import org
.junit
.Before
;
15 import org
.junit
.Test
;
16 import org
.springframework
.security
.core
.GrantedAuthority
;
18 import eu
.etaxonomy
.cdm
.model
.permission
.GrantedAuthorityImpl
;
19 import eu
.etaxonomy
.cdm
.model
.permission
.Group
;
20 import eu
.etaxonomy
.cdm
.model
.permission
.User
;
26 public class GroupTest
{
29 private String groupName
= "";
30 private GrantedAuthority grantedAuthority
;
34 public void setUp() throws Exception
{
35 group
= Group
.NewInstance(groupName
);
36 grantedAuthority
= GrantedAuthorityImpl
.NewInstance(null);
37 user
= User
.NewInstance(null, null);
41 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#NewInstance(java.lang.String)}.
44 public final void testNewInstanceString() {
45 assertNotNull("A new group should have been created.", group
);
46 assertEquals("Created object should be of type Group.", Group
.class, group
.getClass());
47 assertEquals("Created group should have a name.", groupName
, group
.getName());
51 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#getGrantedAuthorities()}.
54 public final void testGetGrantedAuthorities() {
55 // not yet implemented
59 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#addGrantedAuthority(org.springframework.security.core.GrantedAuthority)}.
62 public final void testAddGrantedAuthority() {
63 group
.addGrantedAuthority(grantedAuthority
);
65 assertEquals("There should be exactly one GrantedAuthority.", 1, group
.getGrantedAuthorities().size());
66 assertEquals("The containing GrantedAuthority should match the one we filled it with.", grantedAuthority
, group
.getGrantedAuthorities().iterator().next());
70 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#removeGrantedAuthority(org.springframework.security.core.GrantedAuthority)}.
73 public final void testRemoveGrantedAuthority() {
74 group
.addGrantedAuthority(grantedAuthority
);
76 assertEquals("There should be exactly one GrantedAuthority.", 1, group
.getGrantedAuthorities().size());
77 assertEquals("The containing GrantedAuthority should match the one we filled it with.", grantedAuthority
, group
.getGrantedAuthorities().iterator().next());
79 group
.removeGrantedAuthority(grantedAuthority
);
81 assertEquals("There should not contain GrantedAuthorities anymore.", 0, group
.getGrantedAuthorities().size());
85 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#setName(java.lang.String)}.
88 public final void testSetName() {
90 group
.setName(newName
);
91 assertEquals("Groups name should have changed.", newName
, group
.getName());
95 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#getName()}.
98 public final void testGetName() {
99 assertEquals("Group should have a name", groupName
, group
.getName());
103 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#getMembers()}.
106 public final void testGetMembers() {
107 // not implemented yet
111 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#addMember(eu.etaxonomy.cdm.model.permission.User)}.
114 public final void testAddMember() {
115 group
.addMember(user
);
117 assertEquals("Group should have exactly one member.", 1, group
.getMembers().size());
118 assertEquals("The member should match the one we filled it with.", user
, group
.getMembers().iterator().next());
120 assertEquals("The user should be in the group", group
, user
.getGroups().iterator().next());
124 * Test method for {@link eu.etaxonomy.cdm.model.permission.Group#removeMember(eu.etaxonomy.cdm.model.permission.User)}.
127 public final void testRemoveMember() {
128 group
.addMember(user
);
130 assertEquals("Group should have exactly one member.", 1, group
.getMembers().size());
131 assertEquals("The member should match the one we filled it with.", user
, group
.getMembers().iterator().next());
133 group
.removeMember(user
);
135 assertEquals("Group should not have members anymore.", 0, group
.getMembers().size());
137 assertEquals("The user should not be in any groups", 0, user
.getGroups().size());