当我运行我的规格时,我正在寻找一种方法来抑制Ruby警告.
spec spec/models/account_spec.rb
Run Code Online (Sandbox Code Playgroud)
我收到警告,例如:
DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, ...
warning: already initialized constant SOME_CONSTANT_NAME
Run Code Online (Sandbox Code Playgroud)
删除ActiveSupport警告很容易ActiveSupport::Deprecation.silenced = true.
作为spec命令的一部分,如何防止已初始化的常量警告?或者通过创建另一个spec可以抑制此类警告的文件.请记住,这些警告来自gem文件,因此我无法进入这些文件并将其包围起来Kernel.silence_warnings.
注意:
我知道抑制警告很糟糕.但是,当我spec从内部运行单个内容时,vim如果警告不会使我的屏幕混乱,那将会很好.
嗨我跑的时候收到很多警告,rspec这让我太烦了,
怎么解决?因为我2.1.2在rbenv下尝试过Ruby版本,但它根本不起作用.
这是我的Gemfile
source 'https://rubygems.org'
gem 'bootstrap-sass'
gem 'coffee-rails'
gem 'rails'
gem 'haml-rails'
gem 'sass-rails'
gem 'uglifier'
gem 'jquery-rails'
group :development do
gem 'sqlite3'
gem 'pry'
gem 'pry-nav'
gem 'thin'
gem "better_errors"
gem "binding_of_caller"
end
group :test, :development do
gem 'rspec-rails'
end
group :production do
gem 'pg'
gem 'rails_12factor'
end
gem 'hirb'
gem 'crack'
gem 'ap'
gem 'awesome_print'
# gem 'faker'
Run Code Online (Sandbox Code Playgroud)
警告用法
% rspec (git)-[feature/w1_test_the_video_model]
nil
/Users/jeff/.rbenv/versions/2.0.0-p481/lib/ruby/gems/2.0.0/gems/bootstrap-sass-3.1.1.1/lib/bootstrap-sass/sass_functions.rb:20: warning: ambiguous first argument; put parentheses or even spaces …Run Code Online (Sandbox Code Playgroud) 我正在使用rspec-rails 3.0.1测试rails 4.1.0应用程序.rspec命令正在打印有关我在应用程序中使用的gem的大量警告.我在下面列出了一部分输出.我想知道是否有可能抑制这种情况.
/home/indika/Documents/rails/news_app/config/initializers/kramdown.rb:6: warning: method redefined; discarding old convert_img
/home/indika/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/kramdown-1.4.0/lib/kramdown/converter/html.rb:259: warning: previous definition of convert_img was here
/home/indika/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/mail-2.5.4/lib/mail/network/delivery_methods/sendmail.rb:53: warning: shadowing outer local variable - to
/home/indika/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/find_definitions.rb:16: warning: File.exists? is a deprecated name, use File.exist? instead
/home/indika/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/find_definitions.rb:16: warning: File.exists? is a deprecated name, use File.exist? instead
/home/indika/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/find_definitions.rb:16: warning: File.exists? is a deprecated name, use File.exist? instead
/home/indika/Documents/rails/news_app/spec/factories/news_articles.rb:1: warning: method redefined; discarding old ruby_iterator_code
/home/indika/Documents/rails/news_app/spec/factories/news_articles.rb:1: warning: previous definition of ruby_iterator_code was here
/home/indika/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/database_cleaner-1.3.0/lib/database_cleaner/configuration.rb:45: warning: instance variable @cleaners not initialized
/home/indika/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rouge-1.5.1/lib/rouge/regex_lexer.rb:136: warning: …Run Code Online (Sandbox Code Playgroud) 我目前正在使用rails 4.1.1和ruby 2.1.1运行rspec但是我得到了一堆与gems有关的错误,甚至没有进入模型.
这是一个新版本的rspec,它有一个spec_helper.rb和一个rails_helper.rb
您需要使用该文件中的rails_helper.rb随后引用spec_helper.rb
我没有对这两个帮助文件进行任何更改,只是刚开始使用我的项目.任何帮助/信息将不胜感激!
$ bundle exec rspec
/.rvm/gems/ruby-2.1.1/gems/simplecov-html-0.8.0/lib/simplecov-html.rb:58: warning: possibly useless use of a variable in void context
/.rvm/gems/ruby-2.1.1/gems/gibbon-1.1.3/lib/gibbon/api_category.rb:75: warning: method redefined; discarding old api_key=
/.rvm/gems/ruby-2.1.1/gems/rack-cors-0.2.9/lib/rack/cors.rb:71: warning: shadowing outer local variable - logger
/.rvm/gems/ruby-2.1.1/gems/rack-cors-0.2.9/lib/rack/cors.rb:174: warning: assigned but unused variable - x_origin
/.rvm/gems/ruby-2.1.1/gems/stripe-1.14.0/lib/stripe.rb:172: warning: assigned but unused variable - ex
/.rvm/gems/ruby-2.1.1/gems/rest-client-1.6.7/lib/restclient/exceptions.rb:157: warning: assigned but unused variable - message
/.rvm/gems/ruby-2.1.1/gems/rest-client-1.6.7/lib/restclient/exceptions.rb:167: warning: assigned but unused variable - message
/.rvm/gems/ruby-2.1.1/gems/rest-client-1.6.7/lib/restclient/response.rb:11: warning: method redefined; discarding old body
/.rvm/gems/ruby-2.1.1/gems/rest-client-1.6.7/lib/restclient/payload.rb:47: warning: mismatched indentations at …Run Code Online (Sandbox Code Playgroud)