# File lib/fog/rackspace/requests/identity/create_token.rb, line 25
        def create_token(username, api_key)
          unless username == 'baduser' || api_key == 'bad_key'
            compute_tenant = Fog::Mock.random_numbers(6)
            object_tenant = generate_object_tenant

            response = Excon::Response.new
            response.status = 200
            response.body = {
              "access" => {
                "token"=> {
                  "id" => Fog::Mock.random_hex(32),
                  "expires" => (Time.now.utc + 86400).strftime("%Y-%m-%dT%H:%M:%S.%LZ"),
                  "tenant" => { "id" => compute_tenant, "name" => compute_tenant }
                },
                "user" => {
                  "id" => Fog::Mock.random_numbers(6),
                  "name" => username,
                  "roles" => [
                    {
                      "id" => Fog::Mock.random_numbers(1),
                      "description" => "Fake Role for an object store",
                      "name" => "object-store:default"
                    },
                    {
                      "id" => Fog::Mock.random_numbers(1),
                      "description" => "Fake Role for a compute cluster",
                      "name" => "compute:default"
                    }
                  ]
                },
                "serviceCatalog" => build_service_catalog(compute_tenant, object_tenant),
              }
            }
            response
          else
            response = Excon::Response.new
            response.status = 401
            response.body = {
              "unauthorized" => {
                "code" => 401,
                "message" => "Username or API key is invalid."
              }
            }
            raise Excon::Errors::Unauthorized.new('Unauthorized', nil, response)
          end
        end