def test_user_request_produces_valid_json(self): req = UserRequest() req.username = "******" req.password = "******" req.remote_address = "127.0.0.1" self.assertEqual(req.to_json(), '{"username": "******", "password": "******", ' '"validation-factors": {"validationFactors": [{"name": "remote_address", "value": "%s"}]}}' % (req.username,req.password,req.remote_address), 'JSON does not match')
def create_user_session(self, user_name, password, remote_addr): """ Asks the crowd provider for a user session token :param user_name: Login name of the user :param password: Password of the user :param remote_addr: IP address the user is requesting from :return: User object in JSON containing a 'token' from Crowd raises exception if invalid credentials """ user = UserRequest() user.username = user_name user.password = password user.remote_address = remote_addr # Now we have enough information to make # a request to the Crowd API for a session return self._make_request('session', user.to_json())
def update_user(self, username, first_name, last_name, email, password): """ Asks the client to update the user record :param username: login name for the user :param first_name: The name given to the user for use in an informal setting :param last_name: The name of the user's family :param email: Email address :param password: User's desired password :return: nothing """ req = UserRequest() req.username = username req.first_name = first_name req.last_name = last_name req.email = email req.password = password return self._make_request('user?username=%s' % username, data=req.new_user_json(), method='PUT')