Author: bdelacretaz
Date: Tue Nov  5 15:38:42 2013
New Revision: 1539035

URL: http://svn.apache.org/r1539035
Log:
SLING-3143 - Use JackrabbitOnly category to disable tests that fail on Oak

Modified:
    
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/CreateUserTest.java

Modified: 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/CreateUserTest.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/CreateUserTest.java?rev=1539035&r1=1539034&r2=1539035&view=diff
==============================================================================
--- 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/CreateUserTest.java
 (original)
+++ 
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/CreateUserTest.java
 Tue Nov  5 15:38:42 2013
@@ -16,6 +16,10 @@
  */
 package org.apache.sling.launchpad.webapp.integrationtest.userManager;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
@@ -28,23 +32,36 @@ import org.apache.commons.httpclient.Nam
 import org.apache.commons.httpclient.UsernamePasswordCredentials;
 import org.apache.sling.commons.json.JSONException;
 import org.apache.sling.commons.json.JSONObject;
+import org.apache.sling.commons.testing.integration.HttpTest;
+import org.apache.sling.commons.testing.junit.categories.JackrabbitOnly;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 /**
  * Tests for the 'createUser' Sling Post Operation
  */
-public class CreateUserTest extends UserManagerTestUtil {
+public class CreateUserTest {
     private static Random random = new Random(System.currentTimeMillis());
     private String testUserId;
+    
+    private final UserManagerTestUtil H = new UserManagerTestUtil(); 
 
-       @Override
-       public void tearDown() throws Exception {
+    @Before
+    public void setup() throws Exception {
+        H.setUp();
+    }
+    
+       @After
+       public void cleanup() throws Exception {
                if (testUserId != null) {
                        //remove the test user if it exists.
-                       String postUrl = HTTP_BASE_URL + 
"/system/userManager/user/" + testUserId + ".delete.html";
+                       String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user/" + testUserId + ".delete.html";
                        List<NameValuePair> postParams = new 
ArrayList<NameValuePair>();
-                       assertAuthenticatedAdminPostStatus(postUrl, 
HttpServletResponse.SC_OK, postParams, null);
+                       H.assertAuthenticatedAdminPostStatus(postUrl, 
HttpServletResponse.SC_OK, postParams, null);
                }
-               super.tearDown();
+               H.tearDown();
        }
 
        /*
@@ -55,21 +72,22 @@ public class CreateUserTest extends User
                   <input type="submit" value="Submit" />
                </form>
         */
+       @Test 
        public void testCreateUser() throws IOException, JSONException {
            testUserId = "testUser" + random.nextInt() + 
System.currentTimeMillis();
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.html";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.html";
                final List<NameValuePair> postParams = new 
ArrayList<NameValuePair>();
                postParams.add(new NameValuePair(":name", testUserId));
                postParams.add(new NameValuePair("marker", testUserId));
                postParams.add(new NameValuePair("pwd", "testPwd"));
                postParams.add(new NameValuePair("pwdConfirm", "testPwd"));
                final Credentials creds = new 
UsernamePasswordCredentials("admin", "admin");
-               assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_OK, postParams, null);
+               H.assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_OK, postParams, null);
 
                {
                // fetch the user profile json to verify the settings
-               final String getUrl = HTTP_BASE_URL + 
"/system/userManager/user/" + testUserId + ".json";
-               final String json = getAuthenticatedContent(creds, getUrl, 
CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+               final String getUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user/" + testUserId + ".json";
+               final String json = H.getAuthenticatedContent(creds, getUrl, 
HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
                assertNotNull(json);
                final JSONObject jsonObj = new JSONObject(json);
                assertEquals(testUserId, jsonObj.getString("marker"));
@@ -81,34 +99,37 @@ public class CreateUserTest extends User
         {
             // fetch the session info to verify that the user can log in
             final Credentials newUserCreds = new 
UsernamePasswordCredentials(testUserId, "testPwd");
-            final String getUrl = HTTP_BASE_URL + 
"/system/sling/info.sessionInfo.json";
-            final String json = getAuthenticatedContent(newUserCreds, getUrl, 
CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+            final String getUrl = HttpTest.HTTP_BASE_URL + 
"/system/sling/info.sessionInfo.json";
+            final String json = H.getAuthenticatedContent(newUserCreds, 
getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
             assertNotNull(json);
             final JSONObject jsonObj = new JSONObject(json);
             assertEquals(testUserId, jsonObj.getString("userID"));
         }
        }
 
+       @Test 
        public void testCreateUserMissingUserId() throws IOException {
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.html";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.html";
 
                List<NameValuePair> postParams = new ArrayList<NameValuePair>();
                Credentials creds = new UsernamePasswordCredentials("admin", 
"admin");
-               assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
+               H.assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
        }
 
+       @Test 
        public void testCreateUserMissingPwd() throws IOException {
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.html";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.html";
 
         String userId = "testUser" + random.nextInt();
                List<NameValuePair> postParams = new ArrayList<NameValuePair>();
                postParams.add(new NameValuePair(":name", userId));
                Credentials creds = new UsernamePasswordCredentials("admin", 
"admin");
-               assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
+               H.assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
        }
 
+       @Test 
        public void testCreateUserWrongConfirmPwd() throws IOException {
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.html";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.html";
 
         String userId = "testUser" + random.nextInt();
                List<NameValuePair> postParams = new ArrayList<NameValuePair>();
@@ -116,11 +137,12 @@ public class CreateUserTest extends User
                postParams.add(new NameValuePair("pwd", "testPwd"));
                postParams.add(new NameValuePair("pwdConfirm", "testPwd2"));
                Credentials creds = new UsernamePasswordCredentials("admin", 
"admin");
-               assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
+               H.assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
        }
 
+       @Test 
        public void testCreateUserUserAlreadyExists() throws IOException {
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.html";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.html";
 
                testUserId = "testUser" + random.nextInt();
                List<NameValuePair> postParams = new ArrayList<NameValuePair>();
@@ -128,10 +150,10 @@ public class CreateUserTest extends User
                postParams.add(new NameValuePair("pwd", "testPwd"));
                postParams.add(new NameValuePair("pwdConfirm", "testPwd"));
                Credentials creds = new UsernamePasswordCredentials("admin", 
"admin");
-               assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_OK, postParams, null);
+               H.assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_OK, postParams, null);
 
                //post the same info again, should fail
-               assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
+               H.assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
        }
 
        /*
@@ -144,8 +166,9 @@ public class CreateUserTest extends User
           <input type="submit" value="Submit" />
        </form>
        */
+       @Test 
        public void testCreateUserWithExtraProperties() throws IOException, 
JSONException {
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.html";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.html";
 
                testUserId = "testUser" + random.nextInt();
                List<NameValuePair> postParams = new ArrayList<NameValuePair>();
@@ -156,11 +179,11 @@ public class CreateUserTest extends User
                postParams.add(new NameValuePair("displayName", "My Test 
User"));
                postParams.add(new NameValuePair("url", 
"http://www.apache.org";));
                Credentials creds = new UsernamePasswordCredentials("admin", 
"admin");
-               assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_OK, postParams, null);
+               H.assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_OK, postParams, null);
 
                //fetch the user profile json to verify the settings
-               String getUrl = HTTP_BASE_URL + "/system/userManager/user/" + 
testUserId + ".json";
-               String json = getAuthenticatedContent(creds, getUrl, 
CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+               String getUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user/" + testUserId + ".json";
+               String json = H.getAuthenticatedContent(creds, getUrl, 
HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
                assertNotNull(json);
                JSONObject jsonObj = new JSONObject(json);
                assertEquals(testUserId, jsonObj.getString("marker"));
@@ -175,8 +198,9 @@ public class CreateUserTest extends User
         * Test for SLING-1642 to verify that user self-registration by the 
anonymous
         * user is not allowed by default.
         */
+       @Test 
        public void testAnonymousSelfRegistrationDisabled() throws IOException {
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.html";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.html";
 
                String userId = "testUser" + random.nextInt();
                List<NameValuePair> postParams = new ArrayList<NameValuePair>();
@@ -184,16 +208,17 @@ public class CreateUserTest extends User
                postParams.add(new NameValuePair("pwd", "testPwd"));
                postParams.add(new NameValuePair("pwdConfirm", "testPwd"));
                //user create without logging in as a privileged user should 
return a 500 error
-               httpClient.getState().clearCredentials();
-               assertPostStatus(postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
+               H.getHttpClient().getState().clearCredentials();
+               H.assertPostStatus(postUrl, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, postParams, null);
        }
        
        
        /**
         * Test for SLING-1677
         */
+       @Test 
        public void testCreateUserResponseAsJSON() throws IOException, 
JSONException {
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.json";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.json";
 
                testUserId = "testUser" + random.nextInt();
                List<NameValuePair> postParams = new ArrayList<NameValuePair>();
@@ -202,7 +227,7 @@ public class CreateUserTest extends User
                postParams.add(new NameValuePair("pwd", "testPwd"));
                postParams.add(new NameValuePair("pwdConfirm", "testPwd"));
                Credentials creds = new UsernamePasswordCredentials("admin", 
"admin");
-               String json = getAuthenticatedPostContent(creds, postUrl, 
CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
+               String json = H.getAuthenticatedPostContent(creds, postUrl, 
HttpTest.CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
 
                //make sure the json response can be parsed as a JSON object
                JSONObject jsonObj = new JSONObject(json);
@@ -213,11 +238,13 @@ public class CreateUserTest extends User
         * Test for SLING-2070 to verify that members of the UserAdmin group
         * can create users.
         */
+       @Test 
+    @Category(JackrabbitOnly.class) // TODO: fails on Oak
        public void testCreateUserAsUserAdminGroupMember() throws IOException {
-               testUserId = createTestUser();
-               addUserToUserAdminGroup(testUserId);
+               testUserId = H.createTestUser();
+               H.addUserToUserAdminGroup(testUserId);
                
-        String postUrl = HTTP_BASE_URL + 
"/system/userManager/user.create.html";
+        String postUrl = HttpTest.HTTP_BASE_URL + 
"/system/userManager/user.create.html";
 
                String userId = "testUser" + random.nextInt();
                List<NameValuePair> postParams = new ArrayList<NameValuePair>();
@@ -227,7 +254,7 @@ public class CreateUserTest extends User
 
                Credentials creds = new UsernamePasswordCredentials(testUserId, 
"testPwd");
                final String msg = "Expecting user " + testUserId + " to be 
able to create another user";
-               assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_OK, postParams, msg);
+               H.assertAuthenticatedPostStatus(creds, postUrl, 
HttpServletResponse.SC_OK, postParams, msg);
        }
        
 }


Reply via email to