Package play.test

Examples of play.test.FakeRequest


    String sFakeUser = username + UUID.randomUUID();
    // Prepare test user
    JsonNode node = updatePayloadFieldValue("/adminUserCreatePayload.json", "username", sFakeUser);

    // Create user
    FakeRequest request = new FakeRequest(POST, "/user");
    request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
    request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
    request = request.withJsonBody(node, POST);
    Result result = routeAndCall(request);
    assertRoute(result, "Create user.", Status.CREATED, null, false);
    return sFakeUser;
  }
View Full Code Here


    (
        getFakeApplication(),
        new Runnable()   {
          public void run()   {
            String sAuthEnc = TestConfig.AUTH_ADMIN_ENC;
            FakeRequest request;
            Result result;
     
            continueOnFail(true);
           
            String sFakeUser = new AdminUserFunctionalTest().routeCreateNewUser();


            //START TEST FOR NEW API

            // Users key empty
            request = new FakeRequest("POST", "/push/message");
            request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
            request = request.withHeader(TestConfig.KEY_AUTH, sAuthEnc);
            request = request.withHeader(HTTP.CONTENT_TYPE, MediaType.APPLICATION_JSON);
            request = request.withJsonBody(getPayload("/pushPayloadWithProfileSpecifiedWithoutUsers.json"), play.test.Helpers.POST);
            result = routeAndCall(request);
            if (Logger.isDebugEnabled()) Logger.debug("sendPushWithUsersValueEmpty request: " + request.getWrappedRequest().headers());
            if (Logger.isDebugEnabled()) Logger.debug("sendPushWithUsersValueEmpty result: " + contentAsString(result));
            assertRoute(result, "error with send, key users empty", Status.BAD_REQUEST, CustomHttpCode.PUSH_NOTFOUND_KEY_USERS.getDescription(), true);

            // Users value different from array
            request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
            request = request.withHeader(TestConfig.KEY_AUTH, sAuthEnc);
            request = request.withHeader(HTTP.CONTENT_TYPE, MediaType.APPLICATION_JSON);
            request = request.withJsonBody(getPayload("/pushPayloadWithValueUsersDifferentFromArray.json"), play.test.Helpers.POST);
            result = routeAndCall(request);
            if (Logger.isDebugEnabled()) Logger.debug("sendPushWithUsersValueDifferentFromArray request: " + request.getWrappedRequest().headers());
            if (Logger.isDebugEnabled()) Logger.debug("sendPushWithUsersValueDifferentFromArray result: " + contentAsString(result));
            assertRoute(result, "error with send, key users invalid", Status.BAD_REQUEST, CustomHttpCode.PUSH_USERS_FORMAT_INVALID.getDescription(), true);

            // Profiles value MUST be Array of String

            request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
            request = request.withHeader(TestConfig.KEY_AUTH, sAuthEnc);
            request = request.withHeader(HTTP.CONTENT_TYPE, MediaType.APPLICATION_JSON);
            request = request.withJsonBody(getPayload("/pushPayloadWithProfilesValueExpressedInString.json"), play.test.Helpers.POST);
            result = routeAndCall(request);
            if (Logger.isDebugEnabled()) Logger.debug("sendPushWithUsersValueDifferentFromArray request: " + request.getWrappedRequest().headers());
            if (Logger.isDebugEnabled()) Logger.debug("sendPushWithUsersValueDifferentFromArray result: " + contentAsString(result));
            assertRoute(result, "error with send, push profiles format invalid(profile expressed on String)", Status.BAD_REQUEST, CustomHttpCode.PUSH_PROFILE_FORMAT_INVALID.getDescription(), true);
          }
        }
    );
View Full Code Here

              // Prepare test user
              String o_token=UUID.randomUUID().toString();
              JsonNode node = updatePayloadFieldValue("/socialSignup.json", "oauth_token", o_token);
 
              // Create user
              FakeRequest request = new FakeRequest(getMethod(), getRouteAddress());
              request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
              request = request.withJsonBody(node, getMethod());
              Result result = routeAndCall(request);           
              assertRoute(result, "testSocial - check user no rid", 200, "\"user\":{\"name\":", true);
             
              String body = play.test.Helpers.contentAsString(result);
              JsonNode jsonRes = Json.parse(body);
              String sessionToken = jsonRes.get("data").get(SessionKeys.TOKEN.toString()).textValue();
              String username = jsonRes.get("data").get("user").get("name").textValue();
           
            //there is the signupdate in system object?
              String url="/users?fields=system%20as%20s&where=user.name%3D%22"+username+"%22";
              Logger.debug("URL to check signupdate in system: " + url);
              request = new FakeRequest("GET",url);
              request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
              request = request.withHeader(TestConfig.KEY_TOKEN, sessionToken);
              result = routeAndCall(request);           
              assertRoute(result, "testSocial - signupdate in system", 200, "\"signUpDate\":\"", true);
           
            //users cannot access to system properties belonging to other users
              String sFakeUser = "testsocialnormaluser_" + UUID.randomUUID();
              // Prepare test user
              node = updatePayloadFieldValue("/adminUserCreatePayload.json", "username", sFakeUser);
 
              // Create user
              request = new FakeRequest("POST", "/user");
              request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
              request = request.withJsonBody(node, "POST");
              result = routeAndCall(request);
              assertRoute(result, "routeCreateUser check username", Status.CREATED, "name\":\""+sFakeUser+"\"", true);

              url="/users?fields=system%20as%20s&where=user.name%3D%22"+username+"%22";
              Logger.debug("URL to check signupdate in system: " + url);
              request = new FakeRequest("GET",url);
              request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
              request = request.withHeader(TestConfig.KEY_AUTH,TestConfig.encodeAuth(sFakeUser, "passw1"));
              result = routeAndCall(request);           
              assertRoute(result, "testSocial - no access to system attribute by other users", 200, "s\":null", true);
           
            //users have social data property 
              url="/users?&where=user.name%3D%22"+username+"%22";
              request = new FakeRequest("GET",url);
              request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
              request = request.withHeader(TestConfig.KEY_AUTH,TestConfig.encodeAuth(sFakeUser, "passw1"));
              result = routeAndCall(request);           
              assertRoute(result, "testSocial - visibleByRegisteredUsers._social must be present", 200, "\"visibleByRegisteredUsers\":{\"_social\":{\"facebook\":{\"id\"", true);
             
            //the social user logins again using the same social token and .... it has to be the same user
            //this test tests the login using social network
              node = updatePayloadFieldValue("/socialSignup.json", "oauth_token", o_token);
              request = new FakeRequest(getMethod(), getRouteAddress());
              request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
              request = request.withJsonBody(node, getMethod());
              result = routeAndCall(request);           
              assertRoute(result, "testSocial - check user no rid", 200, "\"user\":{\"name\":", true);
             
              body = play.test.Helpers.contentAsString(result);
              JsonNode jsonResCheck = Json.parse(body);
              String sessionTokenCheck = jsonResCheck.get("data").get(SessionKeys.TOKEN.toString()).textValue();
              String usernameCheck = jsonResCheck.get("data").get("user").get("name").textValue();
              Assert.assertTrue("Usernames must be equal. At signup: " + username + ", at login: " + usernameCheck, username.equals(usernameCheck));
              Assert.assertTrue("Session tokens must be different. At signup: " + sessionToken + ", at login: " + sessionTokenCheck, !sessionToken.equals(sessionTokenCheck));
             
             
              ObjectNode objectNodeRes = (ObjectNode)jsonRes;
              ObjectNode objectNodeResCheck = (ObjectNode)jsonResCheck;
              ((ObjectNode) objectNodeRes.get("data")).remove("X-BB-SESSION");
              ((ObjectNode) objectNodeResCheck.get("data")).remove("X-BB-SESSION");             
              Assert.assertTrue("Social login must return same data (but X-BB-SESSION) of social signup:\nobjectNodeRes:\n" + objectNodeRes.toString()+"\n\nobjectNodeResCheck:\n" + objectNodeResCheck.toString(),objectNodeRes.equals(objectNodeResCheck));
           
              //users cannot update their _social fields
              request = new FakeRequest("PUT", "/me");
              request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
              request = request.withHeader(TestConfig.KEY_TOKEN, sessionToken);
              request = request.withJsonBody(getPayload("/adminUserUpdateNoRolePayload.json"), PUT);
              result = routeAndCall(request);
              assertRoute(result, "testSocial - cannot update their _social fields", 200, "\"_social\":{\"facebook\":{\"id\":\"mockid", true);
             
           
          }
View Full Code Here

        {
          String sFakeUser = new AdminUserFunctionalTest().routeCreateNewUser();
         
          // Test change password
          String route=getRouteAddress()+sFakeUser+"/password";
          FakeRequest request = new FakeRequest(getMethod(), route);
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          request = request.withJsonBody(getPayload("/adminUserChangePasswordPayload.json"), getMethod());
          Result result = routeAndCall(request);
          if (Logger.isDebugEnabled()) Logger.debug("testRouteChangePassword request: " + request.getWrappedRequest().headers());
          if (Logger.isDebugEnabled()) Logger.debug("testRouteChangePassword result: " + contentAsString(result));
          assertRoute(result, "testRouteChangePassword 1", Status.OK, null, false);
         
          continueOnFail(true);
         
          // Test change password non valid
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          request = request.withJsonBody(getPayload("/adminUserChangePasswordInvalid.json"), getMethod());
          result = routeAndCall(request);
          assertRoute(result, "testRouteChangePassword 2 not valid", Status.BAD_REQUEST, TestConfig.MSG_CHANGE_ADMIN_PWD, true);

          continueOnFail(false);
         
          // Restore old password
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          request = request.withJsonBody(getPayload("/adminUserRestorePasswordPayload.json"), getMethod());
          result = routeAndCall(request);
          assertRoute(result, "testRouteChangePassword 3 restore old password", Status.OK, null, false);
        }
      }
    );   
View Full Code Here

        {
          String sFakeUser = new AdminUserFunctionalTest().routeCreateNewUser();
          String route=getRouteAddress()+sFakeUser+"/password";

          // No AppCode, No Authorization
          FakeRequest request = new FakeRequest(getMethod(), route);
          Result result = routeAndCall(request);
          assertRoute(result, "No AppCode No Authorization", BAD_REQUEST, TestConfig.MSG_NO_APP_CODE_NO_AUTH, true);
 
          // No Authorization
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          result = routeAndCall(request);
          assertRoute(result, "No Authorization", UNAUTHORIZED, null, false);
         
          // Invalid AppCode
          request = request.withHeader(TestConfig.KEY_APPCODE, "12345890");
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          result = routeAndCall(request);
          assertRoute(result, "Invalid AppCode", UNAUTHORIZED, TestConfig.MSG_INVALID_APP_CODE, true);
 
          // Invalid Authorization
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, "Basic dXNlcjE6cGFzc3c=");
          result = routeAndCall(request);
          assertRoute(result, "Invalid Authorization", UNAUTHORIZED, null, false);
         
          // No AppCode
          request = new FakeRequest(getMethod(), route);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          result = routeAndCall(request);
          assertRoute(result, "No AppCode", BAD_REQUEST, TestConfig.MSG_NO_APP_CODE, true);
        }
      }
    );   
View Full Code Here

          // Create user
          String sFakeUser = "testpushuser_" + UUID.randomUUID();
          JsonNode node = updatePayloadFieldValue("/adminUserCreatePayload.json", "username", sFakeUser);

          // Create user
          FakeRequest request = new FakeRequest("POST", "/user");
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withJsonBody(node, "POST");
          Result result = routeAndCall(request);
          assertRoute(result, "routeCreateUser check username", Status.CREATED, "name\":\""+sFakeUser+"\"", true);
       
          String body = play.test.Helpers.contentAsString(result);
          JsonNode jsonRes = Json.parse(body);
          String username = jsonRes.get("data").get("user").get("name").textValue();
         
          //populate login_info with iOS Token
          String sessionToken = jsonRes.get("data").get(SessionKeys.TOKEN.toString()).textValue();
          request = new FakeRequest("PUT","/push/enable/ios/"+ UUID.randomUUID());
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_TOKEN, sessionToken);
          result = routeAndCall(request);
          assertRoute(result,"populate login_info",200,null,true);
         
          //populate login_info with Android Token
          sessionToken = jsonRes.get("data").get(SessionKeys.TOKEN.toString()).textValue();
          request = new FakeRequest("PUT","/push/enable/android/"+ UUID.randomUUID());
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_TOKEN, sessionToken);
          result = routeAndCall(request);
          assertRoute(result,"populate login_info",200,null,true);
         
//          there is the login_info in system object?
          String url="/users?fields=system%20as%20s&where=user.name%3D%22"+username+"%22";
          Logger.debug("URL to check login_info in system: " + url);
          request = new FakeRequest("GET",url);
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_TOKEN, sessionToken);
          result = routeAndCall(request);           
          assertRoute(result, "testPush - login_info in system", 200, "\"s\":{\"login_info\"", true);
         
          //users cannot access to system properties belonging to other users
 
          String sFakeUserNotAccess = "testpushuser_" + UUID.randomUUID();
          // Prepare test user
          node = updatePayloadFieldValue("/adminUserCreatePayload.json", "username", sFakeUserNotAccess);
                    String sPwd = getPayloadFieldValue("/adminUserCreatePayload.json", "password");
          String sAuthEnc = TestConfig.encodeAuth(sFakeUser, sPwd);
         
          // Create user
          request = new FakeRequest("POST", "/user");
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withJsonBody(node, "POST");
          result = routeAndCall(request);
          assertRoute(result, "routeCreateUser check username", Status.CREATED, "name\":\""+sFakeUserNotAccess+"\"", true);

          url="/users?fields=system%20as%20s&where=user.name%3D%22"+username+"%22";
          Logger.debug("URL to check signupdate in system: " + url);
          request = new FakeRequest("GET",url);
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH,TestConfig.encodeAuth(sFakeUserNotAccess, sPwd));
          result = routeAndCall(request);   
          assertRoute(result, "testPush - no access to system attribute by other users", 200, "s\":null", true);
           
            //send push notifications with old API
            request = new FakeRequest("POST","/push/message/"+sFakeUser);
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH,TestConfig.encodeAuth(sFakeUserNotAccess, sPwd));
          request = request.withJsonBody(getPayload("/pushPayloadWithoutProfileSpecified.json"), "POST");
          result = routeAndCall(request);
          assertRoute(result,"testSendPushWithOldApi - ok", 200, null, true);
         
            //send push notifications with new API     
          node = updatePayloadFieldValue("/pushPayloadWithoutProfileSpecifiedWithUser.json", "users", new String[]{sFakeUser});
          request = new FakeRequest("POST", "/push/message");
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH,TestConfig.encodeAuth(sFakeUserNotAccess, sPwd));
          request = request.withJsonBody(node,"POST");
          result = routeAndCall(request);
          assertRoute(result,"testSendPushWithNewApi - ok", 200, null, true);
         
        }
      }
View Full Code Here

      new Runnable()
      {
        public void run()
        {
          //load settings
          FakeRequest request = new FakeRequest(GET, getRouteAddress());
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          Result result = routeAndCall(request);
          assertRoute(result, "LoadConfigurationAsJSON 1", OK, "application.name\":\"BaasBox\",\"description\":\"The App name\",\"type\":\"String\",\"editable\":true,\"visible\":true,\"overridden\":false", true);
         
          //override setting
          Application.APPLICATION_NAME.override("blablabla");
         
          //reload settings
          request = new FakeRequest(GET, getRouteAddress());
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          result = routeAndCall(request);
          assertRoute(result, "LoadConfigurationAsJSON 2", OK,
              "application.name\":\"blablabla\",\"description\":\"The App name\",\"type\":\"String\",\"editable\":false,\"visible\":true,\"overridden\":true", true);
       
          //tries to edit the value
          try{
            Application.APPLICATION_NAME.setValue("baasbox");
            Assert.fail("APPLICATION_NAME changed, but it is overridden");
          }catch (java.lang.IllegalStateException e){
          }catch (Throwable t){
            Assert.fail(t.getMessage());
          }

          Application.APPLICATION_NAME.setVisible(false);
          //reload settings
          request = new FakeRequest(GET, getRouteAddress());
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          result = routeAndCall(request);
          assertRoute(result, "LoadConfigurationAsJSON 3", OK,
              "application.name\":\"--HIDDEN--\",\"description\":\"The App name\",\"type\":\"String\",\"editable\":false,\"visible\":false,\"overridden\":true", true);
       
          //get the hidden value
View Full Code Here

        {
          routeCreateAsset();

          continueOnFail(true);

          FakeRequest request = new FakeRequest(getMethod(), getRouteAddress());
          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          request = request.withHeader(HTTP.CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED);
          request = request.withFormUrlEncodedBody(mParametersSimple);
          Result result = routeAndCall(request);
          assertRoute(result, "testRouteCreateSimpleAsset. Already exists", Status.BAD_REQUEST, TestConfig.MSG_ASSET_ALREADY_EXISTS, true);

          request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          request = request.withHeader(HTTP.CONTENT_TYPE, MediaType.APPLICATION_JSON);
          request = request.withFormUrlEncodedBody(mParametersSimple);
          result = routeAndCall(request);
          assertRoute(result, "testRouteCreateSimpleAsset. Wrong media type", Status.BAD_REQUEST, null, false);
         
          continueOnFail(false);
View Full Code Here

  public void routeCreateAsset()
  {
    mParametersSimple.put(PARAM_NAME, TEST_ASSET_NAME());
    mParametersSimple.put(PARAM_META, getPayload("/adminAssetCreateMeta.json").toString());

    FakeRequest request = new FakeRequest(getMethod(), getRouteAddress());
    request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
    request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
    request = request.withHeader(HTTP.CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED);
    request = request.withFormUrlEncodedBody(mParametersSimple);
    Result result = routeAndCall(request);
    assertRoute(result, "testRouteCreateSimpleAsset", Status.CREATED, null, true);
  }
View Full Code Here

  public void routeDeleteAsset()
  {
    mParametersSimple.put(PARAM_NAME, TEST_ASSET_NAME());
    mParametersSimple.put(PARAM_META, getPayload("/adminAssetCreateMeta.json").toString());

    FakeRequest request = new FakeRequest(DELETE, getRouteAddress() + "/" + mParametersSimple.get(PARAM_NAME));
    request = request.withHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
    request = request.withHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
    request = request.withHeader(HTTP.CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED);
    request = request.withFormUrlEncodedBody(mParametersSimple);
    Result result = routeAndCall(request);
    assertRoute(result, "testRouteCreateSimpleAsset. Delete", Status.OK, null, false);
   
  }
View Full Code Here

TOP

Related Classes of play.test.FakeRequest

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.