Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 无法在视图规范Rails 4/Rspec Rails 3中的视图上存根方法_Ruby On Rails_Ruby On Rails 4_Rspec_Rspec Rails_Rspec3 - Fatal编程技术网

Ruby on rails 无法在视图规范Rails 4/Rspec Rails 3中的视图上存根方法

Ruby on rails 无法在视图规范Rails 4/Rspec Rails 3中的视图上存根方法,ruby-on-rails,ruby-on-rails-4,rspec,rspec-rails,rspec3,Ruby On Rails,Ruby On Rails 4,Rspec,Rspec Rails,Rspec3,我尝试在Rails 4.2应用程序的视图规范中存根一个helper方法 describe 'cities/index' do let(:cities) { FactoryGirl.create_list(:city, 5) } before do allow(view).to receive(:cities).and_return{ cities } end it 'shows the list of all the cities' do render

我尝试在Rails 4.2应用程序的视图规范中存根一个helper方法

describe 'cities/index' do
  let(:cities) { FactoryGirl.create_list(:city, 5) }

  before do
    allow(view).to receive(:cities).and_return{ cities }
  end

  it 'shows the list of all the cities' do
    render
    cities.each do |city|
      expect(rendered).to have_link(city.name, href: city_path(city))
    end
  end
end
但是我得到了错误

 Failure/Error: allow(view).to receive(:cities).and_return{ cities }
       #<#<Class:0x000000061886d8>:0x00000003d20d68 @_routes=nil, @_config={}, @view_renderer=#<ActionView::Renderer:0x00000003d20ef8 @lookup_context=#<ActionView::LookupContext:0x00000003d21060 @details_key=nil, @details={:locale=>[:en], :formats=>[:html, :text, :js, :css, :ics, :csv, :vcf, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :slim, :coffee, :jbuilder]}, @skip_default_locale=false, @cache=true, @prefixes=["", "cities"], @rendered_format=nil, @view_paths=#<ActionView::PathSet:0x00000003d20fe8 @paths=[#<ActionView::OptimizedFileSystemResolver:0x00000005951ff0 @pattern=":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}", @cache=#<ActionView::Resolver::Cache:0x00000005951fc8 @data=#<ActionView::Resolver::Cache::SmallCache:0x00000005951fa0 @backend={}, @default_proc=#<Proc:0x000000032a5230@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/actionview-4.2.1/lib/action_view/template/resolver.rb:49 (lambda)>>>, @path="/home/nafaa/RailsProjects/curiocity/app/views">, #<ActionView::OptimizedFileSystemResolver:0x000000059535a8 @pattern=":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}", @cache=#<ActionView::Resolver::Cache:0x00000005953418 @data=#<ActionView::Resolver::Cache::SmallCache:0x00000005953328 @backend={}, @default_proc=#<Proc:0x000000032a5230@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/actionview-4.2.1/lib/action_view/template/resolver.rb:49 (lambda)>>>, @path="/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/devise-3.5.2/app/views">]>>>, @request=#<ActionController::TestRequest:0x00000006192e08 @env={"rack.version"=>[1, 3], "rack.input"=>#<StringIO:0x00000007b1a808>, "rack.errors"=>#<StringIO:0x00000007b1a8a8>, "rack.multithread"=>true, "rack.multiprocess"=>true, "rack.run_once"=>false, "REQUEST_METHOD"=>"GET", "SERVER_NAME"=>"example.org", "SERVER_PORT"=>"80", "QUERY_STRING"=>"", "rack.url_scheme"=>"http", "HTTPS"=>"off", "SCRIPT_NAME"=>"", "CONTENT_LENGTH"=>"0", "HTTP_HOST"=>"test.host", "REMOTE_ADDR"=>"0.0.0.0", "HTTP_USER_AGENT"=>"Rails Testing", "action_dispatch.routes"=>#<ActionDispatch::Routing::RouteSet:0x000000059671c0>, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.redirect_filter"=>[], "action_dispatch.secret_token"=>nil, "action_dispatch.secret_key_base"=>"7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63", "action_dispatch.show_exceptions"=>false, "action_dispatch.show_detailed_exceptions"=>true, "action_dispatch.logger"=>#<ActiveSupport::Logger:0x000000057f3ca8 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x000000057f3b90 @datetime_format=nil>, @formatter=#<ActiveSupport::Logger::SimpleFormatter:0x00000001f097f8 @datetime_format=nil>, @logdev=#<Logger::LogDevice:0x000000057f3b40 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<File:/home/nafaa/RailsProjects/curiocity/log/test.log>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x000000057f3b18 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000057f3ac8>>>>, "action_dispatch.backtrace_cleaner"=>#<Rails::BacktraceCleaner:0x0000000618a0c8 @filters=[#<Proc:0x00000006189fb0@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:14>, #<Proc:0x00000006189f88@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:15>, #<Proc:0x00000006189f38@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:16>, #<Proc:0x00000006189ba0@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:29>], @silencers=[#<Proc:0x00000006189b78@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:19>], @root="/home/nafaa/RailsProjects/curiocity/">, "action_dispatch.key_generator"=>#<ActiveSupport::CachingKeyGenerator:0x00000007888a68 @key_generator=#<ActiveSupport::KeyGenerator:0x00000007888a90 @secret="7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63", @iterations=1000>, @cache_keys=#<ThreadSafe::Cache:0x00000007888a40 @backend={"signed_global_ids64"=>"4\xAC\xEB^\x0E\xD4\x85\xCC\xD5\xF0\xBC\x9BT\xB3}\eRu\xD8\x8C\xB0\xCE\xA4\bwi\x9A\xD3a\xAAn\x0Ee\x10\x01\xE7\xFF1\xFA\x12\x04\xBEZ\xF5\x90\xA1\x95.7\xA5\rzJ\xDC~\x04;\xE4\xC1\xE9\x84w|)"}, @default_proc=nil>>, "action_dispatch.http_auth_salt"=>"http authentication", "action_dispatch.signed_cookie_salt"=>"signed cookie", "action_dispatch.encrypted_cookie_salt"=>"encrypted cookie", "action_dispatch.encrypted_signed_cookie_salt"=>"signed encrypted cookie", "action_dispatch.cookies_serializer"=>:json, "action_dispatch.cookies_digest"=>nil, "rack.session"=>{}, "rack.session.options"=>{:key=>"rack.session", :path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :defer=>false, :renew=>false, :sidbits=>128, :cookie_only=>true, :secure_random=>SecureRandom, :id=>"14e3e35975e7a758051ecf0751adcac0"}, "action_dispatch.request.path_parameters"=>{:controller=>"cities", :action=>"index"}}, @filtered_parameters=nil, @filtered_env=nil, @filtered_path=nil, @protocol=nil, @port=nil, @method=nil, @request_method=nil, @remote_ip=nil, @original_fullpath=nil, @fullpath=nil, @ip=nil, @uuid=nil>, @response=#<ActionController::TestResponse:0x00000006189268 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000061891c8>, @stream=#<ActionDispatch::Response::Buffer:0x00000006189128 @response=#<ActionController::TestResponse:0x00000006189268 ...>, @buf=[], @closed=false>, @header={}, @status=200, @sending_file=false, @blank=false, @cv=#<MonitorMixin::ConditionVariable:0x00000006189100 @monitor=#<ActionController::TestResponse:0x00000006189268 ...>, @cond=#<Thread::ConditionVariable:0x000000061890d8>>, @committed=false, @sending=false, @sent=false, @content_type=nil, @charset=nil, @cache_control={}, @etag=nil>, @params={}, @_assigns={"request"=>#<ActionController::TestRequest:0x00000006192e08 @env={"rack.version"=>[1, 3], "rack.input"=>#<StringIO:0x00000007b1a808>, "rack.errors"=>#<StringIO:0x00000007b1a8a8>, "rack.multithread"=>true, "rack.multiprocess"=>true, "rack.run_once"=>false, "REQUEST_METHOD"=>"GET", "SERVER_NAME"=>"example.org", "SERVER_PORT"=>"80", "QUERY_STRING"=>"", "rack.url_scheme"=>"http", "HTTPS"=>"off", "SCRIPT_NAME"=>"", "CONTENT_LENGTH"=>"0", "HTTP_HOST"=>"test.host", "REMOTE_ADDR"=>"0.0.0.0", "HTTP_USER_AGENT"=>"Rails Testing", "action_dispatch.routes"=>#<ActionDispatch::Routing::RouteSet:0x000000059671c0>, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.redirect_filter"=>[], "action_dispatch.secret_token"=>nil, "action_dispatch.secret_key_base"=>"7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63", "action_dispatch.show_exceptions"=>false, "action_dispatch.show_detailed_exceptions"=>true, "action_dispatch.logger"=>#<ActiveSupport::Logger:0x000000057f3ca8 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x000000057f3b90 @datetime_format=nil>, @formatter=#<ActiveSupport::Logger::SimpleFormatter:0x00000001f097f8 @datetime_format=nil>, @logdev=#<Logger::LogDevice:0x000000057f3b40 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<File:/home/nafaa/RailsProjects/curiocity/log/test.log>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x000000057f3b18 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000057f3ac8>>>>, "action_dispatch.backtrace_cleaner"=>#<Rails::BacktraceCleaner:0x0000000618a0c8 @filters=[#<Proc:0x00000006189fb0@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:14>, #<Proc:0x00000006189f88@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:15>, #<Proc:0x00000006189f38@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:16>, #<Proc:0x00000006189ba0@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:29>], @silencers=[#<Proc:0x00000006189b78@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:19>], @root="/home/nafaa/RailsProjects/curiocity/">, "action_dispatch.key_generator"=>#<ActiveSupport::CachingKeyGenerator:0x00000007888a68 @key_generator=#<ActiveSupport::KeyGenerator:0x00000007888a90 @secret="7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63", @iterations=1000>, @cache_keys=#<ThreadSafe::Cache:0x00000007888a40 @backend={"signed_global_ids64"=>"4\xAC\xEB^\x0E\xD4\x85\xCC\xD5\xF0\xBC\x9BT\xB3}\eRu\xD8\x8C\xB0\xCE\xA4\bwi\x9A\xD3a\xAAn\x0Ee\x10\x01\xE7\xFF1\xFA\x12\x04\xBEZ\xF5\x90\xA1\x95.7\xA5\rzJ\xDC~\x04;\xE4\xC1\xE9\x84w|)"}, @default_proc=nil>>, "action_dispatch.http_auth_salt"=>"http authentication", "action_dispatch.signed_cookie_salt"=>"signed cookie", "action_dispatch.encrypted_cookie_salt"=>"encrypted cookie", "action_dispatch.encrypted_signed_cookie_salt"=>"signed encrypted cookie", "action_dispatch.cookies_serializer"=>:json, "action_dispatch.cookies_digest"=>nil, "rack.session"=>{}, "rack.session.options"=>{:key=>"rack.session", :path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :defer=>false, :renew=>false, :sidbits=>128, :cookie_only=>true, :secure_random=>SecureRandom, :id=>"14e3e35975e7a758051ecf0751adcac0"}, "action_dispatch.request.path_parameters"=>{:controller=>"cities", :action=>"index"}}, @filtered_parameters=nil, @filtered_env=nil, @filtered_path=nil, @protocol=nil, @port=nil, @method=nil, @request_method=nil, @remote_ip=nil, @original_fullpath=nil, @fullpath=nil, @ip=nil, @uuid=nil>, "response"=>#<ActionController::TestResponse:0x00000006189268 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000061891c8>, @stream=#<ActionDispatch::Response::Buffer:0x00000006189128 @response=#<ActionController::TestResponse:0x00000006189268 ...>, @buf=[], @closed=false>, @header={}, @status=200, @sending_file=false, @blank=false, @cv=#<MonitorMixin::ConditionVariable:0x00000006189100 @monitor=#<ActionController::TestResponse:0x00000006189268 ...>, @cond=#<Thread::ConditionVariable:0x000000061890d8>>, @committed=false, @sending=false, @sent=false, @content_type=nil, @charset=nil, @cache_control={}, @etag=nil>, "params"=>{}}, @_controller=#<ActionView::TestCase::TestController:0x00000006192f48 @_action_has_layout=true, @_routes=nil, @_headers={"Content-Type"=>"text/html"}, @_status=200, @_request=nil, @_response=nil, @request=#<ActionController::TestRequest:0x00000006192e08 @env={"rack.version"=>[1, 3], "rack.input"=>#<StringIO:0x00000007b1a808>, "rack.errors"=>#<StringIO:0x00000007b1a8a8>, "rack.multithread"=>true, "rack.multiprocess"=>true, "rack.run_once"=>false, "REQUEST_METHOD"=>"GET", "SERVER_NAME"=>"example.org", "SERVER_PORT"=>"80", "QUERY_STRING"=>"", "rack.url_scheme"=>"http", "HTTPS"=>"off", "SCRIPT_NAME"=>"", "CONTENT_LENGTH"=>"0", "HTTP_HOST"=>"test.host", "REMOTE_ADDR"=>"0.0.0.0", "HTTP_USER_AGENT"=>"Rails Testing", "action_dispatch.routes"=>#<ActionDispatch::Routing::RouteSet:0x000000059671c0>, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.redirect_filter"=>[], "action_dispatch.secret_token"=>nil, "action_dispatch.secret_key_base"=>"7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63", "action_dispatch.show_exceptions"=>false, "action_dispatch.show_detailed_exceptions"=>true, "action_dispatch.logger"=>#<ActiveSupport::Logger:0x000000057f3ca8 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x000000057f3b90 @datetime_format=nil>, @formatter=#<ActiveSupport::Logger::SimpleFormatter:0x00000001f097f8 @datetime_format=nil>, @logdev=#<Logger::LogDevice:0x000000057f3b40 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<File:/home/nafaa/RailsProjects/curiocity/log/test.log>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x000000057f3b18 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000057f3ac8>>>>, "action_dispatch.backtrace_cleaner"=>#<Rails::BacktraceCleaner:0x0000000618a0c8 @filters=[#<Proc:0x00000006189fb0@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:14>, #<Proc:0x00000006189f88@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:15>, #<Proc:0x00000006189f38@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:16>, #<Proc:0x00000006189ba0@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:29>], @silencers=[#<Proc:0x00000006189b78@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:19>], @root="/home/nafaa/RailsProjects/curiocity/">, "action_dispatch.key_generator"=>#<ActiveSupport::CachingKeyGenerator:0x00000007888a68 @key_generator=#<ActiveSupport::KeyGenerator:0x00000007888a90 @secret="7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63", @iterations=1000>, @cache_keys=#<ThreadSafe::Cache:0x00000007888a40 @backend={"signed_global_ids64"=>"4\xAC\xEB^\x0E\xD4\x85\xCC\xD5\xF0\xBC\x9BT\xB3}\eRu\xD8\x8C\xB0\xCE\xA4\bwi\x9A\xD3a\xAAn\x0Ee\x10\x01\xE7\xFF1\xFA\x12\x04\xBEZ\xF5\x90\xA1\x95.7\xA5\rzJ\xDC~\x04;\xE4\xC1\xE9\x84w|)"}, @default_proc=nil>>, "action_dispatch.http_auth_salt"=>"http authentication", "action_dispatch.signed_cookie_salt"=>"signed cookie", "action_dispatch.encrypted_cookie_salt"=>"encrypted cookie", "action_dispatch.encrypted_signed_cookie_salt"=>"signed encrypted cookie", "action_dispatch.cookies_serializer"=>:json, "action_dispatch.cookies_digest"=>nil, "rack.session"=>{}, "rack.session.options"=>{:key=>"rack.session", :path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :defer=>false, :renew=>false, :sidbits=>128, :cookie_only=>true, :secure_random=>SecureRandom, :id=>"14e3e35975e7a758051ecf0751adcac0"}, "action_dispatch.request.path_parameters"=>{:controller=>"cities", :action=>"index"}}, @filtered_parameters=nil, @filtered_env=nil, @filtered_path=nil, @protocol=nil, @port=nil, @method=nil, @request_method=nil, @remote_ip=nil, @original_fullpath=nil, @fullpath=nil, @ip=nil, @uuid=nil>, @response=#<ActionController::TestResponse:0x00000006189268 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000061891c8>, @stream=#<ActionDispatch::Response::Buffer:0x00000006189128 @response=#<ActionController::TestResponse:0x00000006189268 ...>, @buf=[], @closed=false>, @header={}, @status=200, @sending_file=false, @blank=false, @cv=#<MonitorMixin::ConditionVariable:0x00000006189100 @monitor=#<ActionController::TestResponse:0x00000006189268 ...>, @cond=#<Thread::ConditionVariable:0x000000061890d8>>, @committed=false, @sending=false, @sent=false, @content_type=nil, @charset=nil, @cache_control={}, @etag=nil>, @params={}, @_view_context_class=#<Class:0x000000061886d8>, @_lookup_context=#<ActionView::LookupContext:0x00000003d21060 @details_key=nil, @details={:locale=>[:en], :formats=>[:html, :text, :js, :css, :ics, :csv, :vcf, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :slim, :coffee, :jbuilder]}, @skip_default_locale=false, @cache=true, @prefixes=["", "cities"], @rendered_format=nil, @view_paths=#<ActionView::PathSet:0x00000003d20fe8 @paths=[#<ActionView::OptimizedFileSystemResolver:0x00000005951ff0 @pattern=":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}", @cache=#<ActionView::Resolver::Cache:0x00000005951fc8 @data=#<ActionView::Resolver::Cache::SmallCache:0x00000005951fa0 @backend={}, @default_proc=#<Proc:0x000000032a5230@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/actionview-4.2.1/lib/action_view/template/resolver.rb:49 (lambda)>>>, @path="/home/nafaa/RailsProjects/curiocity/app/views">, #<ActionView::OptimizedFileSystemResolver:0x000000059535a8 @pattern=":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}", @cache=#<ActionView::Resolver::Cache:0x00000005953418 @data=#<ActionView::Resolver::Cache::SmallCache:0x00000005953328 @backend={}, @default_proc=#<Proc:0x000000032a5230@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/actionview-4.2.1/lib/action_view/template/resolver.rb:49 (lambda)>>>, @path="/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/devise-3.5.2/app/views">]>>, @_view_renderer=#<ActionView::Renderer:0x00000003d20ef8 @lookup_context=#<ActionView::LookupContext:0x00000003d21060 @details_key=nil, @details={:locale=>[:en], :formats=>[:html, :text, :js, :css, :ics, :csv, :vcf, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :slim, :coffee, :jbuilder]}, @skip_default_locale=false, @cache=true, @prefixes=["", "cities"], @rendered_format=nil, @view_paths=#<ActionView::PathSet:0x00000003d20fe8 @paths=[#<ActionView::OptimizedFileSystemResolver:0x00000005951ff0 @pattern=":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}", @cache=#<ActionView::Resolver::Cache:0x00000005951fc8 @data=#<ActionView::Resolver::Cache::SmallCache:0x00000005951fa0 @backend={}, @default_proc=#<Proc:0x000000032a5230@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/actionview-4.2.1/lib/action_view/template/resolver.rb:49 (lambda)>>>, @path="/home/nafaa/RailsProjects/curiocity/app/views">, #<ActionView::OptimizedFileSystemResolver:0x000000059535a8 @pattern=":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}", @cache=#<ActionView::Resolver::Cache:0x00000005953418 @data=#<ActionView::Resolver::Cache::SmallCache:0x00000005953328 @backend={}, @default_proc=#<Proc:0x000000032a5230@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/actionview-4.2.1/lib/action_view/template/resolver.rb:49 (lambda)>>>, @path="/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/devise-3.5.2/app/views">]>>>, @_config={}>, @_request=#<ActionController::TestRequest:0x00000006192e08 @env={"rack.version"=>[1, 3], "rack.input"=>#<StringIO:0x00000007b1a808>, "rack.errors"=>#<StringIO:0x00000007b1a8a8>, "rack.multithread"=>true, "rack.multiprocess"=>true, "rack.run_once"=>false, "REQUEST_METHOD"=>"GET", "SERVER_NAME"=>"example.org", "SERVER_PORT"=>"80", "QUERY_STRING"=>"", "rack.url_scheme"=>"http", "HTTPS"=>"off", "SCRIPT_NAME"=>"", "CONTENT_LENGTH"=>"0", "HTTP_HOST"=>"test.host", "REMOTE_ADDR"=>"0.0.0.0", "HTTP_USER_AGENT"=>"Rails Testing", "action_dispatch.routes"=>#<ActionDispatch::Routing::RouteSet:0x000000059671c0>, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.redirect_filter"=>[], "action_dispatch.secret_token"=>nil, "action_dispatch.secret_key_base"=>"7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63", "action_dispatch.show_exceptions"=>false, "action_dispatch.show_detailed_exceptions"=>true, "action_dispatch.logger"=>#<ActiveSupport::Logger:0x000000057f3ca8 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x000000057f3b90 @datetime_format=nil>, @formatter=#<ActiveSupport::Logger::SimpleFormatter:0x00000001f097f8 @datetime_format=nil>, @logdev=#<Logger::LogDevice:0x000000057f3b40 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<File:/home/nafaa/RailsProjects/curiocity/log/test.log>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x000000057f3b18 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000057f3ac8>>>>, "action_dispatch.backtrace_cleaner"=>#<Rails::BacktraceCleaner:0x0000000618a0c8 @filters=[#<Proc:0x00000006189fb0@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:14>, #<Proc:0x00000006189f88@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:15>, #<Proc:0x00000006189f38@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:16>, #<Proc:0x00000006189ba0@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:29>], @silencers=[#<Proc:0x00000006189b78@/home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/railties-4.2.1/lib/rails/backtrace_cleaner.rb:19>], @root="/home/nafaa/RailsProjects/curiocity/">, "action_dispatch.key_generator"=>#<ActiveSupport::CachingKeyGenerator:0x00000007888a68 @key_generator=#<ActiveSupport::KeyGenerator:0x00000007888a90 @secret="7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63", @iterations=1000>, @cache_keys=#<ThreadSafe::Cache:0x00000007888a40 @backend={"signed_global_ids64"=>"4\xAC\xEB^\x0E\xD4\x85\xCC\xD5\xF0\xBC\x9BT\xB3}\eRu\xD8\x8C\xB0\xCE\xA4\bwi\x9A\xD3a\xAAn\x0Ee\x10\x01\xE7\xFF1\xFA\x12\x04\xBEZ\xF5\x90\xA1\x95.7\xA5\rzJ\xDC~\x04;\xE4\xC1\xE9\x84w|)"}, @default_proc=nil>>, "action_dispatch.http_auth_salt"=>"http authentication", "action_dispatch.signed_cookie_salt"=>"signed cookie", "action_dispatch.encrypted_cookie_salt"=>"encrypted cookie", "action_dispatch.encrypted_signed_cookie_salt"=>"signed encrypted cookie", "action_dispatch.cookies_serializer"=>:json, "action_dispatch.cookies_digest"=>nil, "rack.session"=>{}, "rack.session.options"=>{:key=>"rack.session", :path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :defer=>false, :renew=>false, :sidbits=>128, :cookie_only=>true, :secure_random=>SecureRandom, :id=>"14e3e35975e7a758051ecf0751adcac0"}, "action_dispatch.request.path_parameters"=>{:controller=>"cities", :action=>"index"}}, @filtered_parameters=nil, @filtered_env=nil, @filtered_path=nil, @protocol=nil, @port=nil, @method=nil, @request_method=nil, @remote_ip=nil, @original_fullpath=nil, @fullpath=nil, @ip=nil, @uuid=nil>, @view_flow=#<ActionView::OutputFlow:0x0000000615bde0 @content={}>, @output_buffer="", @virtual_path=nil, @rendered_views=#<ActionView::TestCase::Behavior::RenderedViewsCollection:0x0000000615bca0 @rendered_views={}>> does not implement: cities
     # ./spec/views/cities/index.html.slim_spec.rb:6:in `block (2 levels) in <top (required)>'
     # /home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:268:in `load'
     # /home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:268:in `block in load'
     # /home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:240:in `load_dependency'
     # /home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:268:in `load'
     # /home/nafaa/.rvm/gems/ruby-2.2.2@curiocity/gems/spring-commands-rspec-1.0.4/lib/spring/commands/rspec.rb:18:in `call'
     # -e:1:in `<main>'
失败/错误:允许(查看)。接收(:cities)。并返回{cities}
#[],:handlers=>[:erb,:builder,:raw,:ruby,:slim,:coffee,:jbuilder]}、@skip_default_locale=false、@cache=true、@prefixes=[“”、“cities”]、@rendered_format=nil、@view_path=#>、@request=[1,3]、“rack.input”=>、“rack.errors”=>、“rack.errors”=>true、“rack.multi-thread”=>true、“rack.multi-process”=>true、“rack.run.false”、“once”=>一次获取服务器名称”=>“example.org”、“SERVER\u PORT”=>“80”、“QUERY\u STRING”=>、“rack.url\u scheme”=>“http”、“HTTPS”=>“off”、“SCRIPT\u NAME”=>、“CONTENT\u LENGTH”=>“0”、“http\u HOST”=>“test.HOST”、“REMOTE\u ADDR”=>“0.0.0.0”、“http\u USER\u AGENT”=>“Rails Testing”、“action\u dispatch.routes”=>“action\u dispatch.routes”=>、“action\u dispatch.parameter\u filter”=>“action\u filter”[]、“action\u dispatch,“action_dispatch.secret_token”=>无,“action_dispatch.secret_key_base”=>“7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63”,“action_dispatch.显示异常”=>假,“action_dispatch.显示详细的_异常”=>真,“action_dispatch.logger=>”action_dispatch.backtrace_cleaner“=>,“action_dispatch.key_generator”=>,“action_dispatch.http_auth_salt”=>“http身份验证”,“action_dispatch.signed_cookie_salt”=>“signed cookie”,“action_dispatch.encrypted_cookie_cookie_salt”=>“encrypted cookie”,“action_dispatchaction\u dispatch.cookies\u serializer“=>:json,“action\u dispatch.cookies\u digest”=>nil,“rack.session”=>{},“rack.session.options”=>{:key=>“rack.session”、:path=>“/”、:domain=>nil、:expire\u after=>nil、:secure=>false、:httponly=>true、:defer=>false、:renew=>false、:sidbits=>128、:cookie=>only=>true、:secure\u random=>SecureRandom、:id=>14E35975E7A758051ECF0751ADCAC0“,“操作调度.请求.路径参数”=>{:控制器=>“城市”,:操作=>“索引”}、@filtered_参数=nil、@filtered_环境=nil、@filtered_路径=nil、@protocol=nil、@port=nil、@method=nil、@request_方法=nil、@remote_ip=nil、@original_fullpath=nil、@ip=nil、@fullpath=nil、@ip=nil、@uuid=nil、@response=,@params},@#u assigns={“request”=>#[1,3],“rack.input”=>#,“rack.errors”=>,“rack.multi thread”=>true,“rack.multiprocess”=>true,“rack.run#once”=>false,“request#u方法”=>“GET”,“SERVER#NAME”=>“example.org”,“SERVER#PORT”=>“80”,“QUERY##字符串”=>,“rack.url”=>,“rack.url方案”=>“http”,“HTTPS”=>“off SCRIPT”,“#脚本”,“#NAME”=>“内容长度”=>“测试主机”=>”“,”远程地址“=>”0.0.0.0“,”HTTP用户代理“=>”Rails测试“,”动作调度.路由“=>”,”动作调度.参数筛选“=>[:密码],”动作调度.重定向筛选“=>[],”动作调度.秘密令牌“=>无,“动作调度.秘密密钥库”=>“7368248a4a51e0ae4789e5f6d20884c032289b9da1a1e916d817efebed052e961d299ed73a8e8b90f33ed9314bb24454845f9ddc3acf18445aa3f6625ed9db63”,“动作调度.显示异常”=>假,“动作调度.显示详细的异常”=>真,“动作调度.记录器”=>,“动作调度.回溯.清理器”=>,“动作调度.键”=>,“>”action\u dispatch.http\u auth\u salt“=>“http身份验证”、“action\u dispatch.signed\u cookie\u salt”=>“signed cookie”、“action\u dispatch.encrypted\u cookie\u salt”=>“action\u dispatch.cookie\u serializer”=>:json、“action\u dispatch.cookie\u digest”=>无,“rack.session”=>,“rack.session.options”=>{key=>“rack.session”,:path=>“/”,:domain=>nil,:expire_after=>nil,:secure=>false,:httponly=>true,:defer=>false,:renew=>false,:sidbits=>128,:cookie_only=>true,:secure_random=>SecureRandom,:id=>“14E35975E7A758051ECF0751ADCAC0”},action=>过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,过滤,路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径路径=奈利利利利利利利利利利利利,协议,协议,港港,港口,端口利利利利利利,港港,港,港利利利,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"rack.errors“=>#”,“rack.multithread”=>true,“rack.multiprocess”=>true,“rack.run\u once”=>false,“REQUEST\u METHOD”=>“GET”,“SERVER\u NAME”=>“example.org”,“SERVER\u PORT”=>“80”,“QUERY\u字符串”=>,“rack.url\u方案”=>“http”,“HTTPS”=>“off”,“脚本\u名称”=>,“CONTENT\u长度”=>“0”,“http\u主机”=>“test.HOST”,“远程地址”=>“0.0.u用户”=>Rails测试,“动作调度.路由”=>,“动作调度.参数筛选”=>[:密码],“动作调度.重定向筛选”=>[],“动作调度.秘密令牌”=>nil,“动作调度.秘密密钥库”=>“7368248A4A51E0AE4789E5F6D20884C03228B9DA1A1E916D817EFEBED052E961D299ED73A8E8E8B90F33ED9314BB244545F9DDACF125ED9DB63”action_dispatch.show_exceptions“=>false,“action_dispatch.show_exceptions”=>true,“action_dispatch.logger”=>,“action_dispatch.backtrace_cleaner”=>,“action_dispatch.key_generator”=>,“action_dispatch.http_auth_salt”=>“http身份验证”,“action_dispatch.signed_cookie\u cookie\u salt”=>“signed”=>“signed cookie”=>“signed cookie”、“action_dispatch.encrypted cookie“=>”加密cookie“、”动作调度.加密签名cookie”=>”签名加密cookie“、”动作调度.cookie”=>:json,“动作调度.cookie摘要”=>nil,“rack.session”=>,”rack.session.options“=>{:key=>”rack.session“,:path=>”/“,:domain=>nil,:expire\u after=>nil,:secure=>false,:httponly=>true,:defer=>false,:renew=>false,:sidbits=>128,:cookie\u only=>true,:secure\u random=>SecureRandom,:id=>“14e3e35975e7a75a755ecf0751adcac0”},“action\u dispatch.request.path\u参数”=>{:controller=>“citilities=”,:action=>“index”},@filtereded\u parameters=nil,@filtered\u path=nil、@protocol=nil、@port=nil、@method=nil、@request\u method=nil、@remote\u ip=nil、@original\u fullpath=nil