response_with не будет работать на вложенных маршрутах - PullRequest
1 голос
/ 14 марта 2012

У меня есть этот код, который я пытаюсь заставить работать.

class CommitRequestsController < ApplicationController
  respond_to :json

  def create
    @commit_request = CommitRequest.new(params[:commit_request])
    respond_with(repository, @commit_request)
  end

  private
  def repository
    Repository.find(params[:repository_id])
  end
end

У меня также есть эта спецификация

CommitRequest.any_instance.stubs(:valid?).returns(false)
post(:create, { 
  format: "json", 
  repository_id: repository.id, 
  commit_request: {}
})
response.status.should_not eq(201)

Проблема в том, что спецификация всегда терпит неудачу. Возвращает 201, даже если созданный объект недействителен. Удаление макета приводит к той же проблеме, даже если созданный объект недействителен (на этот раз реально).

Я использую Rails 3.2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...