Ich habe das Lernprogramm here gefolgt, konnte aber keine Tests erhalten, die mit dem neuen Code zusammenhängen. Insbesondere ist dies, wo Rails klagt:Rails 5: env.find_asset kann nicht in Tests verwendet werden
env = if Rails.application.assets.is_a?(Sprockets::Index)
Rails.application.assets.instance_variable_get('@environment')
else
Rails.application.assets
end
asset = env.find_asset(tmp_asset_name)
Der genaue Fehler ich erhalte, ist:
undefined method `find_asset' for nil:NilClass
Was ist der Grund für `env nil in Testumgebungen zu sein? (Anmerkung: Ich verwende minitest_rails)
ist 'Rails.application .assets'nil? – Dbz
Nein. Der Code im ersten Bit der if-Anweisung wird ausgelöst, also ist es "is_a" (Rippets :: Index). Rails.application.assets ist nicht Nil, aber die Verwendung der Methode instance_variable_get mit @environment gibt nil zurück. – mycellius