У меня есть модуль с именем token wrapper, в котором есть метод getToken
:
def Tokenwrapper.getToken
uri = URI.parse("[URL REDACTED]/api/authenticate")
request = Net::HTTP::Post.new(uri)
request.basic_auth("email@domain.com", "pass")
request.content_type = "application/json"
request["Accept"] = "application/json"
req_options = {
use_ssl: uri.scheme == "https",
}
response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
http.request(request)
end
response
end
Когда я пытаюсь проверить это со следующим утверждением:
assert_equal("#<Net::HTTPOK:",Tokenwrapper.getToken[0..13])
Я получаю эту ошибку:
NoMethodError: undefined method 'downcase' for 0..13:Range
Я не вызываю метод downcase вручную и не вижу причин, по которым ruby должен делать это автоматически. Почему это происходит и как мне выполнить мой тестовый прогон?
Честно говоря, я не очень много знаю об ответах HTTP API и о том, как работает эта область сетевых технологий, поэтому буду признателен за любые ресурсы, а также за ответы на этот вопрос.