1 22 package org.jboss.test.web.test; 23 24 import java.net.HttpURLConnection ; 25 import java.net.URL ; 26 27 import junit.framework.Test; 28 import org.jboss.test.JBossTestCase; 29 import org.jboss.test.util.web.HttpUtils; 30 import org.apache.commons.httpclient.Header; 31 import org.apache.commons.httpclient.HttpMethodBase; 32 33 35 40 public class UserInRoleUnitTestCase extends JBossTestCase 41 { 42 private String baseURL = HttpUtils.getBaseURL(); 43 44 private static Boolean jacc = Boolean.valueOf(System.getProperty("jboss.security.jacc", "false"));; 45 46 public static Test suite() throws Exception 47 { 48 return getDeploySetup(UserInRoleUnitTestCase.class, "userinrole.ear"); 49 } 50 51 public UserInRoleUnitTestCase(String name) 52 { 53 super(name); 54 } 55 56 60 public void testRoleWithLink() throws Exception 61 { 62 log.info("+++ testRoleWithLink"); 63 URL url = new URL (baseURL+"userinrole/testRoleWithLink"); 64 HttpUtils.accessURL(url, "UserInRoleRealm", HttpURLConnection.HTTP_OK); 65 } 66 public void testRoleWithoutLink() throws Exception 67 { 68 log.info("+++ testUnreferencedRole"); 69 URL url = new URL (baseURL+"userinrole/testUnreferencedRole"); 70 HttpUtils.accessURL(url, "UserInRoleRealm", HttpURLConnection.HTTP_OK); 71 } 72 73 83 public void testConflictingUserInRole() throws Exception 84 { 85 if(jacc == Boolean.TRUE) 86 return; 87 log.info("+++ testConflictingUserInRole"); 88 String base = HttpUtils.getBaseURL("sa", "sa"); 89 90 URL url1 = new URL (base+"userinrole1"); 92 HttpMethodBase request = HttpUtils.accessURL(url1, "JBAS-3043-1", HttpURLConnection.HTTP_OK); 93 Header X = request.getResponseHeader("X-isUserInRole-X"); 94 log.info("X "+X); 95 assertEquals("X-isUserInRole-X("+X+") is true", "true", X.getValue()); 96 Header Y = request.getResponseHeader("X-isUserInRole-Y"); 97 log.info("Y "+Y); 98 assertEquals("X-isUserInRole-Y("+Y+") is false" , "false", Y.getValue()); 99 Header Z = request.getResponseHeader("X-isUserInRole-Z"); 100 log.info("Z "+Z); 101 assertEquals("X-isUserInRole-Z("+Z+") is true", "true", Z.getValue()); 102 103 URL url2 = new URL (base+"userinrole2"); 105 request = HttpUtils.accessURL(url2, "JBAS-3043-2", HttpURLConnection.HTTP_OK); 106 X = request.getResponseHeader("X-isUserInRole-X"); 107 log.info("X "+X); 108 assertEquals("X-isUserInRole-X("+X+") is false", "false", X.getValue()); 109 Y = request.getResponseHeader("X-isUserInRole-Y"); 110 log.info("Y "+Y); 111 assertEquals("X-isUserInRole-Y("+Y+") is true", "true", Y.getValue()); 112 Z = request.getResponseHeader("X-isUserInRole-Z"); 113 log.info("Z "+Z); 114 assertEquals("X-isUserInRole-Z("+Z+") is true", "true", Z.getValue()); 115 116 request = HttpUtils.accessURL(url1, "JBAS-3043-1", HttpURLConnection.HTTP_OK); 117 X = request.getResponseHeader("X-isUserInRole-X"); 118 log.info("X "+X); 119 assertEquals("X-isUserInRole-X("+X+") is true", "true", X.getValue()); 120 Y = request.getResponseHeader("X-isUserInRole-Y"); 121 log.info("Y "+Y); 122 assertEquals("X-isUserInRole-Y("+Y+") is false", "false", Y.getValue()); 123 Z = request.getResponseHeader("X-isUserInRole-Z"); 124 log.info("Z "+Z); 125 assertEquals("X-isUserInRole-Z("+Z+") is true", "true", Z.getValue()); 126 } 127 128 137 public void testConflictingUserInRoleJaccVersion() throws Exception 138 { 139 if(jacc == Boolean.FALSE) 140 return; 141 log.info("+++ testConflictingUserInRole"); 142 String base = HttpUtils.getBaseURL("sa", "sa"); 143 144 URL url1 = new URL (base+"userinrole1"); 146 HttpMethodBase request = HttpUtils.accessURL(url1, "JBAS-3043-1", HttpURLConnection.HTTP_OK); 147 Header X = request.getResponseHeader("X-isUserInRole-X"); 148 log.info("X "+X); 149 assertEquals("X-isUserInRole-X("+X+") is false", "false", X.getValue()); 150 Header Y = request.getResponseHeader("X-isUserInRole-Y"); 151 log.info("Y "+Y); 152 assertEquals("X-isUserInRole-Y("+Y+") is false" , "false", Y.getValue()); 153 Header Z = request.getResponseHeader("X-isUserInRole-Z"); 154 log.info("Z "+Z); 155 assertEquals("X-isUserInRole-Z("+Z+") is true", "true", Z.getValue()); 156 157 URL url2 = new URL (base+"userinrole2"); 159 request = HttpUtils.accessURL(url2, "JBAS-3043-2", HttpURLConnection.HTTP_OK); 160 X = request.getResponseHeader("X-isUserInRole-X"); 161 log.info("X "+X); 162 assertEquals("X-isUserInRole-X("+X+") is false", "false", X.getValue()); 163 Y = request.getResponseHeader("X-isUserInRole-Y"); 164 log.info("Y "+Y); 165 assertEquals("X-isUserInRole-Y("+Y+") is false", "false", Y.getValue()); 166 Z = request.getResponseHeader("X-isUserInRole-Z"); 167 log.info("Z "+Z); 168 assertEquals("X-isUserInRole-Z("+Z+") is true", "true", Z.getValue()); 169 170 request = HttpUtils.accessURL(url1, "JBAS-3043-1", HttpURLConnection.HTTP_OK); 171 X = request.getResponseHeader("X-isUserInRole-X"); 172 log.info("X "+X); 173 assertEquals("X-isUserInRole-X("+X+") is false", "false", X.getValue()); 174 Y = request.getResponseHeader("X-isUserInRole-Y"); 175 log.info("Y "+Y); 176 assertEquals("X-isUserInRole-Y("+Y+") is false", "false", Y.getValue()); 177 Z = request.getResponseHeader("X-isUserInRole-Z"); 178 log.info("Z "+Z); 179 assertEquals("X-isUserInRole-Z("+Z+") is true", "true", Z.getValue()); 180 } 181 } 182 | Popular Tags |