Clover Coverage Report - Pebble 2.5-SNAPSHOT
Coverage timestamp: Sat Jun 12 2010 09:39:29 EST
44   101   7   6,29
0   75   0,16   7
7     1  
1    
This report was generated with an evaluation server license. Purchase Clover or configure your license.
 
  DefaultSecurityRealmTest       Line # 21 44 0% 7 0 100% 1.0
 
  (10)
 
1    package net.sourceforge.pebble.security;
2   
3    import net.sourceforge.pebble.Constants;
4    import net.sourceforge.pebble.PebbleContext;
5    import net.sourceforge.pebble.domain.SingleBlogTestCase;
6    import org.acegisecurity.providers.dao.salt.ReflectionSaltSource;
7    import org.acegisecurity.providers.encoding.PasswordEncoder;
8    import org.acegisecurity.providers.encoding.PlaintextPasswordEncoder;
9    import org.acegisecurity.GrantedAuthorityImpl;
10   
11    import java.util.Arrays;
12    import java.util.List;
13    import java.util.HashMap;
14    import java.util.Map;
15   
16    /**
17    * Tests for the DefaultSecurityRealm class.
18    *
19    * @author Simon Brown
20    */
 
21    public class DefaultSecurityRealmTest extends SingleBlogTestCase {
22   
23    private DefaultSecurityRealm realm;
24    private PasswordEncoder passwordEncoder;
25    private ReflectionSaltSource saltSource;
26   
 
27  10 toggle protected void setUp() throws Exception {
28  10 super.setUp();
29   
30  10 realm = new DefaultSecurityRealm();
31  10 realm.setConfiguration(PebbleContext.getInstance().getConfiguration());
32   
33  10 passwordEncoder = new PlaintextPasswordEncoder();
34  10 realm.setPasswordEncoder(passwordEncoder);
35  10 saltSource = new ReflectionSaltSource();
36  10 saltSource.setUserPropertyToUse("getUsername");
37  10 realm.setSaltSource(saltSource);
38   
39  10 realm.init();
40    }
41   
 
42  10 toggle protected void tearDown() throws Exception {
43  10 super.tearDown();
44   
45  10 realm.removeUser("username");
46    }
47   
 
48  2 toggle public void testConfigured() {
49  2 assertSame(passwordEncoder, realm.getPasswordEncoder());
50  2 assertSame(saltSource, realm.getSaltSource());
51    }
52   
 
53  2 toggle public void testGetUser() throws Exception {
54  2 Map<String,String> preferences = new HashMap<String,String>();
55  2 preferences.put("testPreference", "true");
56  2 PebbleUserDetails pud = new PebbleUserDetails("testuser", "password", "name", "emailAddress", "website", "profile", new String[]{Constants.BLOG_OWNER_ROLE}, preferences, true);
57  2 realm.createUser(pud);
58  2 PebbleUserDetails user = realm.getUser("testuser");
59   
60  2 assertNotNull(user);
61  2 assertEquals("testuser", user.getUsername());
62  2 assertEquals("password{testuser}", user.getPassword());
63  2 assertEquals("name", user.getName());
64  2 assertEquals("emailAddress", user.getEmailAddress());
65  2 assertEquals("website", user.getWebsite());
66  2 assertEquals("profile", user.getProfile());
67  2 assertEquals("true", user.getPreference("testPreference"));
68   
69  2 List authorities = Arrays.asList(user.getAuthorities());
70  2 assertEquals(2, authorities.size());
71  2 assertTrue(authorities.contains(new GrantedAuthorityImpl(Constants.BLOG_OWNER_ROLE)));
72  2 assertTrue(authorities.contains(new GrantedAuthorityImpl(Constants.BLOG_READER_ROLE)));
73    }
74   
 
75  2 toggle public void testGetUserWhenUserDoesntExist() throws Exception {
76  2 PebbleUserDetails user = realm.getUser("someotherusername");
77  2 assertNull(user);
78    }
79   
 
80  2 toggle public void testRemoveUser() throws Exception {
81  2 PebbleUserDetails pud = new PebbleUserDetails("testuser", "password", "name", "emailAddress", "website", "profile", new String[]{Constants.BLOG_OWNER_ROLE}, new HashMap<String,String>(), true);
82  2 realm.createUser(pud);
83   
84  2 PebbleUserDetails user = realm.getUser("testuser");
85  2 assertNotNull(user);
86   
87  2 realm.removeUser("testuser");
88  2 user = realm.getUser("testuser");
89  2 assertNull(user);
90    }
91   
 
92  2 toggle public void testRemoveUserThatDoesntExists() throws Exception {
93  2 PebbleUserDetails user = realm.getUser("someotherusername");
94  2 assertNull(user);
95   
96  2 realm.removeUser("someotherusername");
97  2 user = realm.getUser("someotherusername");
98  2 assertNull(user);
99    }
100   
101    }