use of org.wso2.carbon.integration.common.utils.LoginLogoutClient in project product-is by wso2.
the class SCIM2UserTestCase method testUpdateUserWhenExternalClaimDeleted.
@Test(dependsOnMethods = "testGetUser")
public void testUpdateUserWhenExternalClaimDeleted() throws Exception {
AutomationContext context = new AutomationContext("IDENTITY", testUserMode);
backendURL = context.getContextUrls().getBackEndUrl();
loginLogoutClient = new LoginLogoutClient(context);
sessionCookie = loginLogoutClient.login();
HttpPost postRequest = new HttpPost(getPath());
postRequest.addHeader(HttpHeaders.AUTHORIZATION, getAuthzHeader());
postRequest.addHeader(HttpHeaders.CONTENT_TYPE, "application/json");
JSONObject rootObject = new JSONObject();
JSONArray schemas = new JSONArray();
rootObject.put(SCHEMAS_ATTRIBUTE, schemas);
JSONObject names = new JSONObject();
names.put(FAMILY_NAME_ATTRIBUTE, "udaranga");
names.put(GIVEN_NAME_ATTRIBUTE, "buddhima");
rootObject.put(NAME_ATTRIBUTE, names);
rootObject.put(USER_NAME_ATTRIBUTE, "wso2is");
JSONObject emailWork = new JSONObject();
emailWork.put(TYPE_PARAM, EMAIL_TYPE_WORK_ATTRIBUTE);
emailWork.put(VALUE_PARAM, EMAIL_TYPE_WORK_CLAIM_VALUE);
JSONObject emailHome = new JSONObject();
emailHome.put(TYPE_PARAM, EMAIL_TYPE_HOME_ATTRIBUTE);
emailHome.put(VALUE_PARAM, EMAIL_TYPE_HOME_CLAIM_VALUE);
JSONArray emails = new JSONArray();
emails.add(emailWork);
emails.add(emailHome);
rootObject.put(EMAILS_ATTRIBUTE, emails);
rootObject.put(PASSWORD_ATTRIBUTE, PASSWORD);
StringEntity entity = new StringEntity(rootObject.toString());
postRequest.setEntity(entity);
HttpResponse postResponse = client.execute(postRequest);
assertEquals(postResponse.getStatusLine().getStatusCode(), 201, "User has not been created in patch process successfully.");
Object responseObj = JSONValue.parse(EntityUtils.toString(postResponse.getEntity()));
EntityUtils.consume(postResponse.getEntity());
String userId = ((JSONObject) responseObj).get(ID_ATTRIBUTE).toString();
assertNotNull(userId);
String userResourcePath = getPath() + "/" + userId;
claimMetadataManagementServiceClient = new ClaimMetadataManagementServiceClient(backendURL, sessionCookie);
claimMetadataManagementServiceClient.removeExternalClaim("urn:ietf:params:scim:schemas:core:2.0:User", "urn:ietf:params:scim:schemas:core:2.0:User:name.honorificSuffix");
HttpPatch request = new HttpPatch(userResourcePath);
StringEntity params = new StringEntity("{\"schemas\":[\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"]," + "\"Operations\":[{\"op\":\"replace\",\"path\":\"name\",\"value\":{\"givenName\":\"mahela\"," + "\"familyName\":\"jayaxxxx\"}}]}");
request.setEntity(params);
request.addHeader(HttpHeaders.AUTHORIZATION, getAuthzHeader());
request.addHeader(HttpHeaders.CONTENT_TYPE, "application/json");
HttpResponse response = client.execute(request);
assertEquals(response.getStatusLine().getStatusCode(), 200, "User has not been updated successfully.");
Object responseObjAfterPatch = JSONValue.parse(EntityUtils.toString(response.getEntity()));
EntityUtils.consume(response.getEntity());
String updatedGivenName = ((JSONObject) responseObjAfterPatch).get(NAME_ATTRIBUTE).toString();
assertTrue(updatedGivenName.contains("mahela"));
}
use of org.wso2.carbon.integration.common.utils.LoginLogoutClient in project product-is by wso2.
the class SCIM2CustomSchemaMeTestCase method createClaims.
@Test(description = "Creates custom schema dialect, simple attribute and complex attributes.")
private void createClaims() throws Exception {
AutomationContext context = new AutomationContext("IDENTITY", mode);
backendURL = context.getContextUrls().getBackEndUrl();
loginLogoutClient = new LoginLogoutClient(context);
cookie = loginLogoutClient.login();
claimMetadataManagementServiceClient = new ClaimMetadataManagementServiceClient(backendURL, cookie);
int claimDialect = claimMetadataManagementServiceClient.getClaimDialects().length;
// Set custom schema dialect.
ClaimDialectDTO claimDialectDTO = new ClaimDialectDTO();
claimDialectDTO.setClaimDialectURI(CUSTOM_SCHEMA_URI);
claimMetadataManagementServiceClient.addClaimDialect(claimDialectDTO);
// Set claims
setSimpleAttribute();
setComplexAttribute();
assertEquals(claimMetadataManagementServiceClient.getClaimDialects().length, claimDialect + 1);
}
use of org.wso2.carbon.integration.common.utils.LoginLogoutClient in project product-is by wso2.
the class SCIMServiceProviderGroupTestCase method initiate.
@BeforeClass(alwaysRun = true)
public void initiate() throws Exception {
AutomationContext automationContext = new AutomationContext("IDENTITY", TestUserMode.SUPER_TENANT_ADMIN);
userInfo = automationContext.getContextTenant().getContextUser();
backendUrl = automationContext.getContextUrls().getBackEndUrl();
serviceEndPoint = automationContext.getContextUrls().getServiceUrl();
scim_url = backendUrl.substring(0, 22) + "/wso2/scim/";
sessionCookie = new LoginLogoutClient(automationContext).login();
userMgtClient = new UserManagementClient(backendUrl, sessionCookie);
scimConfigAdminClient = new SCIMConfigAdminClient(backendUrl, sessionCookie);
scimClient = new SCIMClient();
// creating users for the test
createUser();
}
use of org.wso2.carbon.integration.common.utils.LoginLogoutClient in project product-is by wso2.
the class SCIMServiceProviderUserTestCase method initiate.
@BeforeClass(alwaysRun = true)
public void initiate() throws Exception {
AutomationContext automationContext = new AutomationContext("IDENTITY", TestUserMode.SUPER_TENANT_ADMIN);
provider_userInfo = automationContext.getContextTenant().getContextUser();
backendUrl = automationContext.getContextUrls().getBackEndUrl();
scim_url = backendUrl.substring(0, 22) + "/wso2/scim/";
serviceEndPoint = automationContext.getContextUrls().getServiceUrl();
sessionCookie = new LoginLogoutClient(automationContext).login();
userMgtClient = new UserManagementClient(backendUrl, sessionCookie);
}
use of org.wso2.carbon.integration.common.utils.LoginLogoutClient in project product-is by wso2.
the class SCIM2CustomSchemaUserTestCase method createClaims.
@Test(description = "Creates custom schema dialect, simple attribute and complex attributes.")
private void createClaims() throws Exception {
AutomationContext context = new AutomationContext("IDENTITY", mode);
backendURL = context.getContextUrls().getBackEndUrl();
loginLogoutClient = new LoginLogoutClient(context);
cookie = loginLogoutClient.login();
claimMetadataManagementServiceClient = new ClaimMetadataManagementServiceClient(backendURL, cookie);
int claimDialect = claimMetadataManagementServiceClient.getClaimDialects().length;
// Set custom schema dialect.
ClaimDialectDTO claimDialectDTO = new ClaimDialectDTO();
claimDialectDTO.setClaimDialectURI(CUSTOM_SCHEMA_URI);
claimMetadataManagementServiceClient.addClaimDialect(claimDialectDTO);
// Set claims
setSimpleAttribute();
setComplexAttribute();
assertEquals(claimMetadataManagementServiceClient.getClaimDialects().length, claimDialect + 1);
}
Aggregations