Search in sources :

Example 6 with LoginLogoutClient

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"));
}
Also used : AutomationContext(org.wso2.carbon.automation.engine.context.AutomationContext) HttpPost(org.apache.http.client.methods.HttpPost) StringEntity(org.apache.http.entity.StringEntity) LoginLogoutClient(org.wso2.carbon.integration.common.utils.LoginLogoutClient) ClaimMetadataManagementServiceClient(org.wso2.identity.integration.common.clients.claim.metadata.mgt.ClaimMetadataManagementServiceClient) JSONObject(org.json.simple.JSONObject) JSONArray(org.json.simple.JSONArray) HttpResponse(org.apache.http.HttpResponse) JSONObject(org.json.simple.JSONObject) HttpPatch(org.apache.http.client.methods.HttpPatch) Test(org.testng.annotations.Test) ISIntegrationTest(org.wso2.identity.integration.common.utils.ISIntegrationTest)

Example 7 with LoginLogoutClient

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);
}
Also used : AutomationContext(org.wso2.carbon.automation.engine.context.AutomationContext) LoginLogoutClient(org.wso2.carbon.integration.common.utils.LoginLogoutClient) ClaimMetadataManagementServiceClient(org.wso2.identity.integration.common.clients.claim.metadata.mgt.ClaimMetadataManagementServiceClient) ClaimDialectDTO(org.wso2.carbon.identity.claim.metadata.mgt.stub.dto.ClaimDialectDTO) Test(org.testng.annotations.Test) SCIM2BaseTest(org.wso2.identity.integration.test.scim2.rest.api.SCIM2BaseTest)

Example 8 with LoginLogoutClient

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();
}
Also used : AutomationContext(org.wso2.carbon.automation.engine.context.AutomationContext) LoginLogoutClient(org.wso2.carbon.integration.common.utils.LoginLogoutClient) SCIMConfigAdminClient(org.wso2.identity.integration.common.clients.scim.SCIMConfigAdminClient) SCIMClient(org.wso2.charon.core.client.SCIMClient) UserManagementClient(org.wso2.identity.integration.common.clients.UserManagementClient) BeforeClass(org.testng.annotations.BeforeClass)

Example 9 with LoginLogoutClient

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);
}
Also used : AutomationContext(org.wso2.carbon.automation.engine.context.AutomationContext) LoginLogoutClient(org.wso2.carbon.integration.common.utils.LoginLogoutClient) UserManagementClient(org.wso2.identity.integration.common.clients.UserManagementClient) BeforeClass(org.testng.annotations.BeforeClass)

Example 10 with LoginLogoutClient

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);
}
Also used : AutomationContext(org.wso2.carbon.automation.engine.context.AutomationContext) LoginLogoutClient(org.wso2.carbon.integration.common.utils.LoginLogoutClient) ClaimMetadataManagementServiceClient(org.wso2.identity.integration.common.clients.claim.metadata.mgt.ClaimMetadataManagementServiceClient) ClaimDialectDTO(org.wso2.carbon.identity.claim.metadata.mgt.stub.dto.ClaimDialectDTO) Test(org.testng.annotations.Test) SCIM2BaseTest(org.wso2.identity.integration.test.scim2.rest.api.SCIM2BaseTest)

Aggregations

LoginLogoutClient (org.wso2.carbon.integration.common.utils.LoginLogoutClient)18 BeforeClass (org.testng.annotations.BeforeClass)10 AutomationContext (org.wso2.carbon.automation.engine.context.AutomationContext)10 AuthenticatorClient (org.wso2.carbon.integration.common.admin.client.AuthenticatorClient)6 ApplicationManagementServiceClient (org.wso2.identity.integration.common.clients.application.mgt.ApplicationManagementServiceClient)6 OauthAdminClient (org.wso2.identity.integration.common.clients.oauth.OauthAdminClient)6 RemoteUserStoreManagerServiceClient (org.wso2.identity.integration.common.clients.usermgt.remote.RemoteUserStoreManagerServiceClient)6 Test (org.testng.annotations.Test)3 UserManagementClient (org.wso2.identity.integration.common.clients.UserManagementClient)3 ClaimMetadataManagementServiceClient (org.wso2.identity.integration.common.clients.claim.metadata.mgt.ClaimMetadataManagementServiceClient)3 File (java.io.File)2 DefaultHttpClient (org.apache.http.impl.client.DefaultHttpClient)2 ClaimDialectDTO (org.wso2.carbon.identity.claim.metadata.mgt.stub.dto.ClaimDialectDTO)2 UserManagementClient (org.wso2.carbon.integration.common.admin.client.UserManagementClient)2 ServerConfigurationManager (org.wso2.carbon.integration.common.utils.mgt.ServerConfigurationManager)2 SCIM2BaseTest (org.wso2.identity.integration.test.scim2.rest.api.SCIM2BaseTest)2 HttpResponse (org.apache.http.HttpResponse)1 HttpPatch (org.apache.http.client.methods.HttpPatch)1 HttpPost (org.apache.http.client.methods.HttpPost)1 StringEntity (org.apache.http.entity.StringEntity)1