首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RAILS和RSpec:应为<"similar_movies">,但使用<[]> ]呈现

RAILS和RSpec:应为<"similar_movies">,但使用<[]> ]呈现
EN

Stack Overflow用户
提问于 2016-07-19 04:01:04
回答 0查看 440关注 0票数 0

这是.spec文件:

代码语言:javascript
复制
describe MoviesController do
    describe 'similar_movies' do
        before :each do
            @fake_results = [double('movie1'), double('movie2')]
        end
        it 'should call the model method that searches similar movies' do
            expect(Movie).to receive(:similar_movies).with("1").
            and_return @fake_results
            get :similar_movies, :id => 1
        end
        it 'should select the similar_movies template for rendering' do
            Movie.stub(:similar_movies).and_return(@fake_results)
            expect(response).to render_template(:similar_movies)
            get :similar_movies, :id => 1
        end
        # it 'should make the similar_movies results avaliable to that template'do

        # end
    end

这是控制器操作:

代码语言:javascript
复制
 # METHOD TO FIND MOVIES WITH THE SAME DIRECTOR AS A GIVEN ONE
   def similar_movies
    @similar_movies_arr = Movie.similar_movies(params[:id])
    #render 'similar_movies'
   end

这是model方法:

代码语言:javascript
复制
    def self.similar_movies(id)
    movie = Movie.find(id)
    director = movie['director']
    @similar_movies_arr = []
    @similar_movies = Movie.where(["director = ?", "#{director}"])
    @similar_movies.each do |m|
      @similar_movies_arr << m
    end
    return @similar_movies_arr
  end

这就是模板:

代码语言:javascript
复制
    -@similar_movies_arr.each do |movie|
  %h1= movie.title

这很简单,这是我使用RSpec的第一步,但是失败了。请,有人能帮我理解这个错误吗?

代码语言:javascript
复制
MoviesController similar_movies should select the similar_movies template for rendering
 Failure/Error: expect(response).to render_template(:similar_movies)
   expecting <"similar_movies"> but rendering with <[]>
EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38445066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档