|
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.
|