Modified: 
qpid/java/trunk/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java?rev=1755516&r1=1755515&r2=1755516&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java
 (original)
+++ 
qpid/java/trunk/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java
 Mon Aug  8 15:57:24 2016
@@ -44,11 +44,13 @@ import org.apache.qpid.server.configurat
 import org.apache.qpid.server.configuration.updater.TaskExecutor;
 import org.apache.qpid.server.model.ConfiguredObject;
 import org.apache.qpid.server.model.GroupProvider;
+import org.apache.qpid.server.model.preferences.GenericPrincipal;
 import org.apache.qpid.server.model.preferences.Preference;
 import org.apache.qpid.server.model.preferences.PreferenceFactory;
 import org.apache.qpid.server.model.preferences.UserPreferences;
 import org.apache.qpid.server.model.preferences.UserPreferencesImpl;
 import org.apache.qpid.server.security.auth.AuthenticatedPrincipal;
+import org.apache.qpid.server.security.auth.AuthenticationResult;
 import org.apache.qpid.server.security.auth.TestPrincipalUtils;
 import org.apache.qpid.server.security.auth.UsernamePrincipal;
 import org.apache.qpid.server.security.group.GroupPrincipal;
@@ -59,12 +61,15 @@ public class RestUserPreferenceHandlerTe
 {
 
     private static final String MYGROUP = "mygroup";
+    private static final String MYGROUP_SERIALIZATION = 
TestPrincipalUtils.getTestPrincipalSerialization(MYGROUP);
     private static final String MYUSER = "myuser";
+    private static final String MYUSER_SERIALIZATION = 
TestPrincipalUtils.getTestPrincipalSerialization(MYUSER);
 
     private RestUserPreferenceHandler _handler = new 
RestUserPreferenceHandler(DEFAULT_PREFERENCE_OPERTAION_TIMEOUT);
     private ConfiguredObject<?> _configuredObject;
     private UserPreferences _userPreferences;
     private Subject _subject;
+    private Principal _userPrincipal;
     private GroupPrincipal _groupPrincipal;
     private PreferenceStore _preferenceStore;
     private TaskExecutor _preferenceTaskExecutor;
@@ -81,12 +86,9 @@ public class RestUserPreferenceHandlerTe
                                                    _configuredObject,
                                                    _preferenceStore,
                                                    
Collections.<Preference>emptyList());
-        _groupPrincipal = new GroupPrincipal(MYGROUP, (GroupProvider) null);
-        _subject = new Subject(true,
-                               Sets.newHashSet(new AuthenticatedPrincipal(new 
UsernamePrincipal(MYUSER, null)),
-                                               _groupPrincipal),
-                               Collections.emptySet(),
-                               Collections.emptySet());
+        _subject = TestPrincipalUtils.createTestSubject(MYUSER, MYGROUP);
+        _groupPrincipal = 
_subject.getPrincipals(GroupPrincipal.class).iterator().next();
+        _userPrincipal = 
_subject.getPrincipals(AuthenticatedPrincipal.class).iterator().next();
         
when(_configuredObject.getUserPreferences()).thenReturn(_userPreferences);
     }
 
@@ -106,7 +108,7 @@ public class RestUserPreferenceHandlerTe
 
         final Map<String, Object> pref = new HashMap<>();
         pref.put(Preference.VALUE_ATTRIBUTE, Collections.emptyMap());
-        pref.put(Preference.VISIBILITY_LIST_ATTRIBUTE, 
Collections.singletonList(MYGROUP));
+        pref.put(Preference.VISIBILITY_LIST_ATTRIBUTE, 
Collections.singletonList(MYGROUP_SERIALIZATION));
 
         Subject.doAs(_subject, new PrivilegedAction<Void>()
                      {
@@ -393,7 +395,7 @@ public class RestUserPreferenceHandlerTe
         final Map<String, Object> pref = new HashMap<>();
         pref.put(Preference.NAME_ATTRIBUTE, "testPref");
         pref.put(Preference.VALUE_ATTRIBUTE, Collections.emptyMap());
-        pref.put(Preference.VISIBILITY_LIST_ATTRIBUTE, 
Collections.singletonList(MYGROUP));
+        pref.put(Preference.VISIBILITY_LIST_ATTRIBUTE, 
Collections.singletonList(MYGROUP_SERIALIZATION));
 
         Subject.doAs(_subject, new PrivilegedAction<Void>()
                      {
@@ -422,7 +424,7 @@ public class RestUserPreferenceHandlerTe
         final Map<String, Object> pref = new HashMap<>();
         pref.put(Preference.NAME_ATTRIBUTE, "testPref");
         pref.put(Preference.VALUE_ATTRIBUTE, Collections.emptyMap());
-        pref.put(Preference.VISIBILITY_LIST_ATTRIBUTE, 
Collections.singletonList(MYGROUP));
+        pref.put(Preference.VISIBILITY_LIST_ATTRIBUTE, 
Collections.singletonList(MYGROUP_SERIALIZATION));
 
         Subject.doAs(_subject, new PrivilegedAction<Void>()
                      {
@@ -527,8 +529,8 @@ public class RestUserPreferenceHandlerTe
                                      type,
                                      "testpref",
                                      null,
-                                     MYUSER,
-                                     
Collections.singleton(_groupPrincipal.getName()),
+                                     MYUSER_SERIALIZATION,
+                                     
Collections.singleton(MYGROUP_SERIALIZATION),
                                      Collections.<String, Object>emptyMap());
                              Preference preference = 
PreferenceFactory.create(_configuredObject, prefAttributes);
                              
awaitPreferenceFuture(_userPreferences.updateOrAppend(Collections.singleton(preference)));
@@ -541,9 +543,9 @@ public class RestUserPreferenceHandlerTe
                                           
typeToPreferenceListMap.keySet().iterator().next());
                              List<Map<String, Object>> preferences = 
typeToPreferenceListMap.get(type);
                              assertEquals("Unexpected number of preferences", 
1, preferences.size());
-                             Set<String> visibilityList = (Set<String>) 
preferences.get(0).get("visibilityList");
+                             Set<Principal> visibilityList = (Set<Principal>) 
preferences.get(0).get("visibilityList");
                              assertEquals("Unexpected number of principals in 
visibility list", 1, visibilityList.size());
-                             assertEquals("Unexpected principal in visibility 
list", MYGROUP, visibilityList.iterator().next());
+                             assertTrue("Unexpected principal in visibility 
list", GenericPrincipal.principalsEqual(_groupPrincipal, 
visibilityList.iterator().next()));
                              return null;
                          }
                      }
@@ -711,8 +713,8 @@ public class RestUserPreferenceHandlerTe
                                      prefType,
                                      prefName,
                                      null,
-                                     MYUSER,
-                                     
Collections.singleton(_groupPrincipal.getName()),
+                                     MYUSER_SERIALIZATION,
+                                     
Collections.singleton(MYGROUP_SERIALIZATION),
                                      Collections.<String, Object>emptyMap());
                              Preference p1 = 
PreferenceFactory.create(_configuredObject, pref1Attributes);
                              preferences.add(p1);
@@ -722,7 +724,7 @@ public class RestUserPreferenceHandlerTe
                                      prefType,
                                      "testPref2",
                                      null,
-                                     MYUSER,
+                                     MYUSER_SERIALIZATION,
                                      Collections.<String>emptySet(),
                                      Collections.<String, Object>emptyMap());
                              Preference p2 = 
PreferenceFactory.create(_configuredObject, pref2Attributes);
@@ -750,10 +752,13 @@ public class RestUserPreferenceHandlerTe
                              assertEquals("Unexpected name of preferences",
                                           prefName,
                                           
preferences.get(0).get(Preference.NAME_ATTRIBUTE));
-                             Set<String> visibilityList = (Set<String>) 
preferences.get(0).get(Preference.VISIBILITY_LIST_ATTRIBUTE);
+                             Set<Principal> visibilityList = (Set<Principal>) 
preferences.get(0).get(Preference.VISIBILITY_LIST_ATTRIBUTE);
                              assertEquals("Unexpected number of principals in 
visibility list", 1, visibilityList.size());
-                             assertEquals("Unexpected principal in visibility 
list", MYGROUP, visibilityList.iterator().next());
-                             assertEquals("Unexpected owner", MYUSER, 
preferences.get(0).get(Preference.OWNER_ATTRIBUTE));
+                             assertTrue("Unexpected principal in visibility 
list",
+                                        
GenericPrincipal.principalsEqual(_groupPrincipal,
+                                                                         
visibilityList.iterator().next()));
+                             assertTrue("Unexpected owner", 
GenericPrincipal.principalsEqual(_userPrincipal,
+                                                                               
                (Principal) 
preferences.get(0).get(Preference.OWNER_ATTRIBUTE)));
                              return null;
                          }
                      }
@@ -781,8 +786,8 @@ public class RestUserPreferenceHandlerTe
                                      prefType,
                                      prefName,
                                      null,
-                                     MYUSER,
-                                     
Collections.singleton(_groupPrincipal.getName()),
+                                     MYUSER_SERIALIZATION,
+                                     
Collections.singleton(MYGROUP_SERIALIZATION),
                                      Collections.<String, Object>emptyMap());
                              Preference p1 = 
PreferenceFactory.create(_configuredObject, pref1Attributes);
                              preferences.add(p1);
@@ -792,7 +797,7 @@ public class RestUserPreferenceHandlerTe
                                      prefType,
                                      "testPref2",
                                      null,
-                                     MYUSER,
+                                     MYUSER_SERIALIZATION,
                                      Collections.<String>emptySet(),
                                      Collections.<String, Object>emptyMap());
                              Preference p2 = 
PreferenceFactory.create(_configuredObject, pref2Attributes);
@@ -815,10 +820,15 @@ public class RestUserPreferenceHandlerTe
                              assertEquals("Unexpected name of preferences",
                                           prefName,
                                           
preferences.get(0).get(Preference.NAME_ATTRIBUTE));
-                             Set<String> visibilityList = (Set<String>) 
preferences.get(0).get(Preference.VISIBILITY_LIST_ATTRIBUTE);
+                             Set<Principal> visibilityList = (Set<Principal>) 
preferences.get(0).get(Preference.VISIBILITY_LIST_ATTRIBUTE);
                              assertEquals("Unexpected number of principals in 
visibility list", 1, visibilityList.size());
-                             assertEquals("Unexpected principal in visibility 
list", MYGROUP, visibilityList.iterator().next());
-                             assertEquals("Unexpected owner", MYUSER, 
preferences.get(0).get(Preference.OWNER_ATTRIBUTE));
+                             assertTrue("Unexpected principal in visibility 
list",
+                                        
GenericPrincipal.principalsEqual(_groupPrincipal,
+                                                                         
visibilityList.iterator().next()));
+                             assertTrue("Unexpected owner",
+                                        
GenericPrincipal.principalsEqual(_userPrincipal,
+                                                                         
(Principal) preferences.get(0)
+                                                                               
                 .get(Preference.OWNER_ATTRIBUTE)));
                              return null;
                          }
                      }
@@ -846,8 +856,8 @@ public class RestUserPreferenceHandlerTe
                                      prefType,
                                      prefName,
                                      null,
-                                     MYUSER,
-                                     
Collections.singleton(_groupPrincipal.getName()),
+                                     MYUSER_SERIALIZATION,
+                                     
Collections.singleton(MYGROUP_SERIALIZATION),
                                      Collections.<String, Object>emptyMap());
                              Preference p1 = 
PreferenceFactory.create(_configuredObject, pref1Attributes);
                              preferences.add(p1);
@@ -857,7 +867,7 @@ public class RestUserPreferenceHandlerTe
                                      prefType,
                                      "testPref2",
                                      null,
-                                     MYUSER,
+                                     MYUSER_SERIALIZATION,
                                      Collections.<String>emptySet(),
                                      Collections.<String, Object>emptyMap());
                              Preference p2 = 
PreferenceFactory.create(_configuredObject, pref2Attributes);
@@ -877,10 +887,14 @@ public class RestUserPreferenceHandlerTe
                              Map<String, Object> preference =
                                      (Map<String, Object>) 
_handler.handleGET(_userPreferences, rootRequestInfo);
                              assertEquals("Unexpected name of preferences", 
prefName, preference.get(Preference.NAME_ATTRIBUTE));
-                             Set<String> visibilityList = (Set<String>) 
preference.get(Preference.VISIBILITY_LIST_ATTRIBUTE);
+                             Set<Principal> visibilityList = (Set<Principal>) 
preference.get(Preference.VISIBILITY_LIST_ATTRIBUTE);
                              assertEquals("Unexpected number of principals in 
visibility list", 1, visibilityList.size());
-                             assertEquals("Unexpected principal in visibility 
list", MYGROUP, visibilityList.iterator().next());
-                             assertEquals("Unexpected owner", MYUSER, 
preference.get(Preference.OWNER_ATTRIBUTE));
+                             assertTrue("Unexpected principal in visibility 
list",
+                                        
GenericPrincipal.principalsEqual(_groupPrincipal,
+                                                                         
visibilityList.iterator().next()));
+                             assertTrue("Unexpected owner",
+                                        
GenericPrincipal.principalsEqual(_userPrincipal,
+                                                                         
(Principal) preference.get(Preference.OWNER_ATTRIBUTE)));
                              return null;
                          }
                      }

Modified: 
qpid/java/trunk/systests/src/test/java/org/apache/qpid/systest/rest/UserPreferencesRestTest.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/systests/src/test/java/org/apache/qpid/systest/rest/UserPreferencesRestTest.java?rev=1755516&r1=1755515&r2=1755516&view=diff
==============================================================================
--- 
qpid/java/trunk/systests/src/test/java/org/apache/qpid/systest/rest/UserPreferencesRestTest.java
 (original)
+++ 
qpid/java/trunk/systests/src/test/java/org/apache/qpid/systest/rest/UserPreferencesRestTest.java
 Mon Aug  8 15:57:24 2016
@@ -25,7 +25,6 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-import java.util.UUID;
 
 import javax.servlet.http.HttpServletResponse;
 
@@ -34,9 +33,7 @@ import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 
 import 
org.apache.qpid.server.management.plugin.preferences.QueryPreferenceValue;
-import org.apache.qpid.server.model.GroupProvider;
 import org.apache.qpid.server.model.preferences.Preference;
-import org.apache.qpid.server.security.group.GroupProviderImpl;
 
 public class UserPreferencesRestTest extends QpidRestTestCase
 {
@@ -63,7 +60,7 @@ public class UserPreferencesRestTest ext
         assertEquals("Unexpected pref description", prefDescription, 
prefDetails.get(Preference.DESCRIPTION_ATTRIBUTE));
         assertEquals("Unexpected pref type", prefType, 
prefDetails.get(Preference.TYPE_ATTRIBUTE));
         assertEquals("Unexpected pref value", prefValueAttributes, 
prefDetails.get(Preference.VALUE_ATTRIBUTE));
-        assertEquals("Unexpected pref owner", RestTestHelper.DEFAULT_USERNAME, 
prefDetails.get(Preference.OWNER_ATTRIBUTE));
+        assertTrue("Unexpected pref owner", ((String) 
prefDetails.get(Preference.OWNER_ATTRIBUTE)).startsWith(RestTestHelper.DEFAULT_USERNAME
 + "@"));
 
         String typeUrl = String.format("broker/userpreferences/%s", prefType);
         assertEquals("Unexpected preference returned from type url",
@@ -81,33 +78,6 @@ public class UserPreferencesRestTest ext
         assertEquals("Unexpected preference returned from all url", 
prefDetails, prefs.get(0));
     }
 
-    public void testSavingOtherUserPreference() throws Exception
-    {
-        getRestTestHelper().submitRequest("groupprovider/temp", "PUT", 
Collections.singletonMap(GroupProvider.TYPE, GroupProviderImpl.CONFIG_TYPE), 
HttpServletResponse.SC_CREATED);
-        getRestTestHelper().createGroup("test", "temp");
-        getRestTestHelper().createNewGroupMember("temp", "test", 
RestTestHelper.DEFAULT_USERNAME);
-        getRestTestHelper().createNewGroupMember("temp", "test", "admin");
-
-        String preferenceType = "X-Type-" + getTestName();
-        String preferenceName = getTestName();
-        Map<String, Object> preferenceAttributes = new HashMap<>();
-        preferenceAttributes.put(Preference.ID_ATTRIBUTE, UUID.randomUUID());
-        preferenceAttributes.put(Preference.TYPE_ATTRIBUTE, preferenceType);
-        preferenceAttributes.put(Preference.NAME_ATTRIBUTE, preferenceName);
-        preferenceAttributes.put(Preference.DESCRIPTION_ATTRIBUTE, "");
-        preferenceAttributes.put(Preference.OWNER_ATTRIBUTE, 
RestTestHelper.DEFAULT_USERNAME);
-        preferenceAttributes.put(Preference.VISIBILITY_LIST_ATTRIBUTE, 
Collections.singletonList("test"));
-        preferenceAttributes.put(Preference.VALUE_ATTRIBUTE, 
Collections.emptyMap());
-
-        String fullUrl = String.format("broker/userpreferences/%s/%s", 
preferenceType, preferenceName);
-        getRestTestHelper().submitRequest(fullUrl, "PUT", 
preferenceAttributes, HttpServletResponse.SC_OK);
-
-        getRestTestHelper().setUsernameAndPassword("admin", "admin");
-
-        preferenceAttributes.put(Preference.OWNER_ATTRIBUTE, "admin");
-        getRestTestHelper().submitRequest(fullUrl, "PUT", 
preferenceAttributes, 422);
-    }
-
     public void testPutQueryPreferenceRoundTrip() throws Exception
     {
         final String prefName = "myquery";
@@ -132,7 +102,7 @@ public class UserPreferencesRestTest ext
         assertEquals("Unexpected pref description", prefDescription, 
prefDetails.get(Preference.DESCRIPTION_ATTRIBUTE));
         assertEquals("Unexpected pref type", prefType, 
prefDetails.get(Preference.TYPE_ATTRIBUTE));
         assertEquals("Unexpected pref value", prefValueAttributes, 
prefDetails.get(Preference.VALUE_ATTRIBUTE));
-        assertEquals("Unexpected pref owner", RestTestHelper.DEFAULT_USERNAME, 
prefDetails.get(Preference.OWNER_ATTRIBUTE));
+        assertTrue("Unexpected pref owner", ((String) 
prefDetails.get(Preference.OWNER_ATTRIBUTE)).startsWith(RestTestHelper.DEFAULT_USERNAME
 + "@"));
 
         String typeUrl = String.format("broker/userpreferences/%s", prefType);
         assertEquals("Unexpected preference returned from type url",
@@ -178,7 +148,7 @@ public class UserPreferencesRestTest ext
         assertEquals("Unexpected pref description", prefDescription, 
prefDetails.get(Preference.DESCRIPTION_ATTRIBUTE));
         assertEquals("Unexpected pref type", prefType, 
prefDetails.get(Preference.TYPE_ATTRIBUTE));
         assertEquals("Unexpected pref value", prefValueAttributes, 
prefDetails.get(Preference.VALUE_ATTRIBUTE));
-        assertEquals("Unexpected pref owner", RestTestHelper.DEFAULT_USERNAME, 
prefDetails.get(Preference.OWNER_ATTRIBUTE));
+        assertTrue("Unexpected pref owner", ((String) 
prefDetails.get(Preference.OWNER_ATTRIBUTE)).startsWith(RestTestHelper.DEFAULT_USERNAME
 + "@"));
 
         String typeUrl = String.format("broker/userpreferences/%s", prefType);
         assertEquals("Unexpected preference returned from type url",



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to