Minitest 中为四个操作(索引、显示、新建、编辑)生成错误
ActionView::Template::Error: Error: @supports condition expected declaration
on line 9749:12 of stdin
>> @supports (scroll-snap-type) {
-----------^
app/views/layouts/application.html.erb:9
应用程序布局的行调用
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
控制器测试套件有 13 次运行。9 次通过,但它们都处理非视图方法(更新、创建、销毁)。
在没有stylesheet_link_tag
激活的情况下,加上或减去它的选项,测试是否通过。设置为<%#
测试运行(并通过)的那一刻
奇怪的是,这些测试过去通过并且application.html.erb
没有被修改。Turbolinks 不能被删除(如果有一个测试套件为此失败似乎很奇怪)。
唯一的变化是引入了覆盖率和 rubycritic 宝石。然而以两种不同的方式调用测试
rails test test/controllers/channels_controller_test.rb
COVERAGE=TRUE rails test test/controllers/channels_controller_test.rb
导致相同的结果。
测试助手也切换了前两行以在没有覆盖的情况下进行测试
require 'simplecov'
SimpleCov.start 'rails'
# Previous content of test helper now starts here
ENV['RAILS_ENV'] ||= 'test'
require_relative "../config/environment"
require "rails/test_help"
require 'webmock/minitest'
class ActiveSupport::TestCase
fixtures :all
def log_in_as(user, shop)
post user_session_url, params: { user_id: user.id, active_shop_id: @site.shop_id }
end
end
移除宝石
# gem 'rubycritic', '~> 4.6', '>= 4.6.1', require: false
group :test do
# gem 'simplecov', '~> 0.21.2'
end
也产生相同的结果。
应该配置什么以便 minitest 知道如何处理 turbolink?