3

我认为这很简单,但我找不到如何去做。

我要做的就是编写一个规范,如果返回的是 json 文件而不是 HTML 文件,则该规范会通过。

这是我的测试现在的样子:

    require 'spec_helper'

    describe "sessions" do
      before do
        @program =FactoryGirl.create(:program)
        @user = FactoryGirl.create(:user)
      end

      describe "user" do
        it "is logged in" do
        post "/api/v1/login", user_login: {email: @user.email, password: @user.password }
        response.status.should be(201)
        # response.format.should be(:json) # Can I do something like this?
      end
    end
  end
4

1 回答 1

6

我建议您检查实际内容,如 meagar 已经指出的那样。在我的项目中,我使用这个 gem 来更容易匹配:https ://github.com/collectiveidea/json_spec

它提供了方便的匹配器来轻松匹配 json 内容:be_json_eql include_json have_json_path have_json_type have_json_size

response.body.should include_json("some_field: 'it definitely has'")
于 2013-10-09T19:31:38.317 回答