Project

General

Profile

« Previous | Next » 

Revision 608d15fa

Added by Katja Luther about 5 years ago

add editor group to extra user

View differences:

eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/RemotingSessionAwareTest.java
8 8
*/
9 9
package eu.etaxonomy.taxeditor.httpinvoker;
10 10

  
11
import java.util.UUID;
12

  
11 13
import org.apache.log4j.Logger;
12 14
import org.junit.After;
13 15
import org.junit.Before;
14
import org.springframework.security.core.userdetails.UserDetails;
15 16
import org.springframework.security.core.userdetails.UsernameNotFoundException;
16 17

  
17 18
import eu.etaxonomy.cdm.api.application.CdmApplicationState;
18 19
import eu.etaxonomy.cdm.api.service.IUserService;
20
import eu.etaxonomy.cdm.model.common.Group;
19 21
import eu.etaxonomy.cdm.model.common.User;
22
import eu.etaxonomy.cdm.persistence.dto.MergeResult;
20 23
import eu.etaxonomy.taxeditor.remoting.cache.ConversationalTransientEntityCacher;
21 24
import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
22 25
import eu.etaxonomy.taxeditor.session.MockSessionOwner;
......
35 38

  
36 39
    private static String extraUsername = "Someone";
37 40
    private static String extraPassword = "Password";
41
    private static UUID editorGroupUuid = UUID.fromString("22e5e8af-b99c-4884-a92f-71978efd3770");
38 42

  
39 43

  
40 44
    private IUserService userService = getRemoteApplicationController().getUserService();
......
49 53
        sessionOwner.setCdmEntitySession(cdmEntitySession);
50 54
        cacher = getCacher(sessionOwner);
51 55

  
52
        UserDetails extraUser = null;
56
        User extraUser = null;
53 57

  
54 58
        try {
55
            extraUser = userService.loadUserByUsername(extraUsername);
59
            extraUser = (User) userService.loadUserByUsername(extraUsername);
60
            Group editorGroup = getRemoteApplicationController().getGroupService().find(editorGroupUuid);
61
            if (!extraUser.getGroups().contains(editorGroup)){
62
                extraUser.getGroups().add(editorGroup);
63
                userService.merge(extraUser, true);
64
            }
56 65
        } catch (UsernameNotFoundException unfe) {
57 66
            User user = User.NewInstance(extraUsername, extraPassword);
58 67
            userService.createUser(user);
68
            Group editorGroup = getRemoteApplicationController().getGroupService().find(editorGroupUuid);
69
            user.getGroups().add(editorGroup);
70
            user = userService.load(user.getUuid());
71
            MergeResult<User> result = userService.merge(user, true);
72
            user = result.getMergedEntity();
59 73
        }
60 74

  
61 75

  

Also available in: Unified diff