Revision: 4090
Author:   solomax666
Date:     Tue Aug 23 11:57:34 2011
Log: - UserManagement test for adding organisations to the user is added.
http://code.google.com/p/openmeetings/source/detail?r=4090

Modified:
/branches/dev/injection/src/app/org/openmeetings/app/data/user/Usermanagement.java /branches/dev/injection/src/app/org/openmeetings/app/persistence/beans/domain/Organisation_Users.java /branches/dev/injection/src/app/org/openmeetings/app/persistence/beans/user/Users.java /branches/dev/injection/src/app/org/openmeetings/app/remote/MainService.java /branches/dev/injection/src/test/org/openmeetings/test/userdata/TestUserManagement.java

=======================================
--- /branches/dev/injection/src/app/org/openmeetings/app/data/user/Usermanagement.java Thu Aug 18 11:34:11 2011 +++ /branches/dev/injection/src/app/org/openmeetings/app/data/user/Usermanagement.java Tue Aug 23 11:57:34 2011
@@ -426,25 +426,6 @@
                }
                return null;
        }
-
-       private int getUserdataNoByKey(Long USER_ID, String DATA_KEY) {
-               int userdata = 0;
-               if (USER_ID.longValue() > 0) {
-                       try {
-                               Query query = em
- .createQuery("select c from Userdata as c where c.user_id = :user_id AND c.data_key = :data_key AND c.deleted <> :deleted");
-                               query.setParameter("user_id", 
USER_ID.longValue());
-                               query.setParameter("data_key", DATA_KEY);
-                               query.setParameter("deleted", "true");
-                               userdata = query.getResultList().size();
-                       } catch (Exception ex2) {
-                               log.error("getUserdataNoByKey", ex2);
-                       }
-               } else {
-                       log.error("Error: No USER_ID given");
-               }
-               return userdata;
-       }

        public Userdata getUserdataByKey(Long user_id, String DATA_KEY) {
                Userdata userdata = new Userdata();
=======================================
--- /branches/dev/injection/src/app/org/openmeetings/app/persistence/beans/domain/Organisation_Users.java Thu Aug 18 11:34:11 2011 +++ /branches/dev/injection/src/app/org/openmeetings/app/persistence/beans/domain/Organisation_Users.java Tue Aug 23 11:57:34 2011
@@ -29,6 +29,7 @@

        @Column(name = "user_id")
        private Long user_id;
+
        @Column(name = "starttime")
        private Date starttime;
        @Column(name = "updatetime")
=======================================
--- /branches/dev/injection/src/app/org/openmeetings/app/persistence/beans/user/Users.java Thu Aug 18 11:34:11 2011 +++ /branches/dev/injection/src/app/org/openmeetings/app/persistence/beans/user/Users.java Tue Aug 23 11:57:34 2011
@@ -113,11 +113,6 @@
        @Column(name = "show_contact_data_to_contacts")
        private Boolean showContactDataToContacts;

-       public Users() {
-               super();
-               // TODO Auto-generated constructor stub
-       }
-
        public Long getUser_id() {
                return user_id;
        }
=======================================
--- /branches/dev/injection/src/app/org/openmeetings/app/remote/MainService.java Sat Aug 20 00:57:33 2011 +++ /branches/dev/injection/src/app/org/openmeetings/app/remote/MainService.java Tue Aug 23 11:57:34 2011
@@ -59,9 +59,9 @@
private static final Logger log = Red5LoggerFactory.getLogger(MainService.class, ScopeApplicationAdapter.webAppRootKey);

        @Autowired
-       private ClientListManager clientListManager = null;
+       private ClientListManager clientListManager;
        @Autowired
-       private ScopeApplicationAdapter scopeApplicationAdapter = null;
+       private ScopeApplicationAdapter scopeApplicationAdapter;
        @Autowired
        private Sessionmanagement sessionManagement;
        @Autowired
@@ -318,12 +318,15 @@
                        RoomClient currentClient;
                        IConnection current = Red5.getConnectionLocal();

+                       if (current == null)
+                               return null;
+
                        Object o;

                        if (withLdap) {
                                log.debug("Ldap Login");

-                               currentClient = this.clientListManager
+                               currentClient = clientListManager
                                                
.getClientByStreamId(current.getClient().getId());

                                // LDAP Loggedin Users cannot use the permanent 
Login Flag
@@ -341,8 +344,7 @@
                                                ldapConfig.getConfigFileName());
                        } else {

-                               currentClient = this.clientListManager
-                                               
.getClientByStreamId(current.getClient().getId());
+ currentClient = clientListManager.getClientByStreamId(current.getClient().getId());

                                o = userManagement.loginUser(SID, 
usernameOrEmail, Userpass,
                                                currentClient, storePermanent);
=======================================
--- /branches/dev/injection/src/test/org/openmeetings/test/userdata/TestUserManagement.java Mon Aug 15 11:47:14 2011 +++ /branches/dev/injection/src/test/org/openmeetings/test/userdata/TestUserManagement.java Tue Aug 23 11:57:34 2011
@@ -1,32 +1,114 @@
 package org.openmeetings.test.userdata;

+import java.util.Date;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Random;
+
 import org.apache.log4j.Logger;
+import org.junit.Before;
 import org.junit.Test;
 import org.openmeetings.app.data.beans.basic.SearchResult;
+import org.openmeetings.app.data.user.Addressmanagement;
+import org.openmeetings.app.data.user.Organisationmanagement;
+import org.openmeetings.app.data.user.Usermanagement;
 import org.openmeetings.app.persistence.beans.basic.Sessiondata;
+import org.openmeetings.app.persistence.beans.domain.Organisation;
 import org.openmeetings.app.persistence.beans.user.Users;
 import org.openmeetings.app.remote.MainService;
 import org.openmeetings.app.remote.UserService;
 import org.openmeetings.test.AbstractOpenmeetingsSpringTest;
 import org.springframework.beans.factory.annotation.Autowired;
+import static junit.framework.Assert.*;

 public class TestUserManagement extends AbstractOpenmeetingsSpringTest {
+       private final static String USER_NAME = "swagner";
+       private final static String USER_PASS = "test";
+       private final static String ORG_PREFIX = "Test Organization";
+       private final static String ORG_COMMENT = "No comments";
+       private final Long LEVEL_ADMIN = 3L;
+
        @Autowired
        private MainService mService;
        @Autowired
        private UserService uService;
+       @Autowired
+       private Usermanagement userManagement;
+       @Autowired
+       private Organisationmanagement organisationmanagement;
+       private Random rnd;

private static final Logger log = Logger.getLogger(TestUserManagement.class);

+       private Long createOrganisation(String namePrefix, Long userId) {
+               String name = namePrefix + rnd.nextLong();
+               Long orgId = organisationmanagement.addOrganisation(name, 
userId);
+               assertTrue("Failed to add organisation", orgId != null && orgId 
> 0);
+               return orgId;
+       }
+
+       private Long addUserToOrganisation(Long userId, Long orgId) {
+ Long orgUserId = organisationmanagement.addUserToOrganisation(userId, orgId, userId, ORG_COMMENT); + assertTrue("Failed to add user to organisation", orgUserId != null && orgUserId > 0);
+               return orgUserId;
+       }
+
+       @Before
+       public void setup() throws Exception {
+               rnd = new Random();
+               Users u = userManagement.getUserByLogin(USER_NAME);
+               if (u == null) {
+ Long userId = userManagement.addUser(LEVEL_ADMIN, 1, 1, "Admin FirstName", USER_NAME, "LastName", 1L, USER_PASS
+                               , 1L, new Date(), "12345", null, null, null, false, 
"GMT", false
+                               , null, null, true, false);
+                       assertTrue("Failed to create user", userId != null && 
userId > 0);
+ List<Organisation> orgs = organisationmanagement.getOrganisations(LEVEL_ADMIN);
+                       Long orgId = -1L;
+                       if (orgs.isEmpty()) {
+                               orgId = createOrganisation(ORG_PREFIX, userId);
+                       } else {
+                               orgId = orgs.get(0).getOrganisation_id();
+                       }
+                       addUserToOrganisation(userId, orgId);
+               }
+       }
+
+       private void addOrganisation(Long userId, Long orgId) {
+ int count = organisationmanagement.getOrganisationsByUserId(LEVEL_ADMIN, userId, 0, Integer.MAX_VALUE, "name", true).size();
+               addUserToOrganisation(userId, orgId);
+ int count2 = organisationmanagement.getOrganisationsByUserId(LEVEL_ADMIN, userId, 0, Integer.MAX_VALUE, "name", true).size();
+               assertEquals("Organisation count is not incremented", count + 
1, count2);
+       }
+
+       @Test
+       public void testAddAdditionalOrganisation() throws Exception {
+               Users u = userManagement.getUserByLogin(USER_NAME);
+               assertNotNull("Failed to fetch user", u);
+
+               boolean found = false;
+ for (Organisation o : organisationmanagement.getOrganisations(LEVEL_ADMIN)) { + if (organisationmanagement.getOrganisation_UserByUserAndOrganisation(u.getUser_id(), o.getOrganisation_id()) == null){
+                               found = true;
+                               addOrganisation(u.getUser_id(), 
o.getOrganisation_id());
+                               break;
+                       }
+               }
+               if (!found) {
+ addOrganisation(u.getUser_id(), createOrganisation(ORG_PREFIX, u.getUser_id()));
+               }
+       }
+
        @Test
        public void testUsers(){

                Sessiondata sessionData = mService.getsessiondata();

- Users us = (Users) mService.loginUser(sessionData.getSession_id(), "swagner", "test",false,null,-1L); + Users us = (Users) mService.loginUser(sessionData.getSession_id(), USER_NAME, USER_PASS, false, 1L, -1L);

SearchResult users = uService.getUserList(sessionData.getSession_id(), 0, 100, "firstname", false);

+               assertNotNull("UserService return no results", users);
+
                log.error("Number of Users 1: "+users.getResult().size());
                log.error("Number of Users 2: "+users.getRecords());

--
You received this message because you are subscribed to the Google Groups 
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/openmeetings-dev?hl=en.

Reply via email to