From: <ro...@us...> - 2009-04-29 14:35:41
|
Revision: 193 http://cse-ip.svn.sourceforge.net/cse-ip/?rev=193&view=rev Author: roekens Date: 2009-04-29 14:35:26 +0000 (Wed, 29 Apr 2009) Log Message: ----------- added several test and bugfixed relevant code Modified Paths: -------------- trunk/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/domain/AddReferenceVisitor.java trunk/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/domain/Group.java trunk/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/ModelMergerTest.java trunk/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/domain/AddReferenceVisitorTest.java Modified: trunk/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/domain/AddReferenceVisitor.java =================================================================== --- trunk/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/domain/AddReferenceVisitor.java 2009-04-29 09:32:50 UTC (rev 192) +++ trunk/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/domain/AddReferenceVisitor.java 2009-04-29 14:35:26 UTC (rev 193) @@ -53,14 +53,14 @@ @Override public void visit(Category category) { switch (type) { - case CATEGORY: + case PARENT: category.addToParentCategory((Category) persistentTarget); break; case COURSE: ((Course)persistentTarget).addToCategory(category); break; - case PARENT: - category.setParent((Category) persistentTarget); + case CHILD: + ((Category) persistentTarget).addToParentCategory(category); break; default: throw new IllegalStateException("Reference type doesn't apply to entity."); Modified: trunk/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/domain/Group.java =================================================================== --- trunk/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/domain/Group.java 2009-04-29 09:32:50 UTC (rev 192) +++ trunk/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/domain/Group.java 2009-04-29 14:35:26 UTC (rev 193) @@ -80,4 +80,9 @@ public List<Account> getMembers() { return members; } + + @Override + public void accept(Visitor visitor) { + visitor.visit(this); + } } Modified: trunk/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/ModelMergerTest.java =================================================================== --- trunk/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/ModelMergerTest.java 2009-04-29 09:32:50 UTC (rev 192) +++ trunk/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/ModelMergerTest.java 2009-04-29 14:35:26 UTC (rev 193) @@ -122,7 +122,6 @@ assertEquals(State.KNOWN, entity.getWorkgroups().get(0).getState()); // check role - //FIXME test broken due to incorrect role association updating assertFalse(entity.getRoles().isEmpty()); assertEquals(ROLE_ID, entity.getRoles().get(0).getId()); assertEquals(State.KNOWN, entity.getRoles().get(0).getState()); Modified: trunk/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/domain/AddReferenceVisitorTest.java =================================================================== --- trunk/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/domain/AddReferenceVisitorTest.java 2009-04-29 09:32:50 UTC (rev 192) +++ trunk/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/domain/AddReferenceVisitorTest.java 2009-04-29 14:35:26 UTC (rev 193) @@ -8,6 +8,7 @@ /** * * @author Ingo Dueppe + * @author Sebastian Roekens * */ public class AddReferenceVisitorTest { @@ -51,5 +52,89 @@ assertNotNull(course.getParent()); assertEquals(parent, course.getParent()); } + + @Test + public void testAddParentCategoryToCategory(){ + Category category = new Category(); + Category parent = new Category(); + category.accept(new AddReferenceVisitor(parent, parent, ReferenceType.PARENT)); + assertNotNull(category.getParent()); + assertEquals(category.getParent(), parent); + } + + @Test + public void testAddChildCategoryToCategory(){ + Category category = new Category(); + Category parent = new Category(); + parent.accept(new AddReferenceVisitor(category, category, ReferenceType.CHILD)); + assertNotNull(parent.getChildren()); + assertEquals(1, parent.getChildren().size()); + assertEquals(category, parent.getChildren().get(0)); + } + @Test + public void testAddCourseToCategory(){ + Course course = new Course(); + Category category = new Category(); + category.accept(new AddReferenceVisitor(course, course, ReferenceType.COURSE)); + assertNotNull(category.getCourses()); + assertEquals(1, category.getCourses().size()); + assertEquals(course, category.getCourses().get(0)); + } + + @Test + public void testAddCourseToRole(){ + Role role = new Role(); + Account account = new Account(); + role.setAccount(account); + Course course = new Course(); + role.accept(new AddReferenceVisitor(course, course, ReferenceType.COURSE)); + assertNotNull(role.getCourse()); + assertEquals(course, role.getCourse()); + } + + @Test + public void testAddAccountToRole(){ + Role role = new Role(); + Course course = new Course(); + role.setCourse(course); + Account account = new Account(); + role.accept(new AddReferenceVisitor(account, account, ReferenceType.ACCOUNT)); + assertNotNull(role.getAccount()); + assertEquals(account, role.getAccount()); + } + + @Test + public void testAddRoleToAccount(){ + Account account = new Account(); + Course course = new Course(); + Role role = new Role(); + role.setCourse(course); + account.accept(new AddReferenceVisitor(role, role, ReferenceType.ROLE)); + assertNotNull(account.getRoles()); + assertEquals(1, account.getRoles().size()); + assertEquals(role, account.getRoles().get(0)); + } + + @Test + public void testAddGroupToAccount(){ + Account account = new Account(); + Group group = new Group(); + account.accept(new AddReferenceVisitor(group, group, ReferenceType.GROUP)); + assertNotNull(account.getGroups()); + assertEquals(1, account.getGroups().size()); + assertEquals(group, account.getGroups().get(0)); + + } + + @Test + public void testAddAccountToGroup(){ + Group group = new Group(); + Account account = new Account(); + group.accept(new AddReferenceVisitor(account, account, ReferenceType.MEMBER)); + assertNotNull(group.getMembers()); + assertEquals(1, group.getMembers().size()); + assertEquals(account, group.getMembers().get(0)); + } + } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |