我正在测试my model methods
,无论如何我可以访问request
或response
标题。
require 'spec_helper'
describe Project do
it "can find an Project that this user belongs to" do
project = Project.find( id: '22', authorization: @auth ) // Rest API Call
expect(response.code).to eq(200);
end
end
当我尝试访问response.code
时,我收到undefined method/variable
响应。如何访问我的响应标题。
更新我的项目模型:
class Project < ActiveRestClient::Base
base_url "https://domainname.com"
get :find, '/project/:id/'
end
答案 0 :(得分:1)
您正在尝试测试一些您无法使用的内容 - 即ActiveRestClient接口的基础代码。它不是您模型中的代码,因此您不应该在模型规范中对其进行测试。您正在测试深度嵌入的内容,而不是您的代码实际应该执行的操作。这有点像测试你可以驾驶汽车 - 通过检查活塞在发动机中上下移动......而不是向窗外看,确保你不会撞到东西。
如果ActiveRestClient有自己的测试套件 - 那么你可以期待它正常工作(例如,当你成功返回某些内容时你得到200响应)。 您不需要在您的型号代码中对其进行测试。您的模型代码应仅测试您提供的功能。例如,测试您的模型是否具有基于ActiveRestClient的&#34;查找&#34;它的方法......并假设(在这个级别)它只是起作用。
如果您想测试端到端功能,请将其添加到您的功能规格中。