Lingkungan
Rails 4.2.0
ruby-2.2.1 [ x86_64 ]
rspec-core 3.2.2
rspec-rails 3.2.1
Dalam /spec/rails_helper.rb saya Saya telah menyertakan Rancangan pembantu untuk file spek ditandai dengan type: :controller
RSpec.configure do |config|
...
....
config.include Devise::TestHelpers, type: :controller
end
Sekarang saya membutuhkan pembantu ini untuk file spesifikasi yang ditandai dengan type: :request
. Apakah ada ketentuan untuk menentukan beberapa nilai ke opsi :type
? Untuk misalnya
config.include Devise::TestHelpers, type: :controller, :request
, atau
config.include Devise::TestHelpers, types: [:controller, :request]
Terima kasih,
Jiggneshh
Anda harus menulis include lagi:
config.include Devise::TestHelpers, type: :request
Kecocokan metadata sangat tepat. Jadi type: [:controller, :request]
akan mengharapkan spesifikasi yang memiliki tipe yang ditentukan sebagai array.
Saya setuju dengan @jiggneshhgohel melihat kode berikut insting saya bahwa itu mirip dengan types
dan semuanya akan berfungsi. Saya mengerti apa yang Anda bicarakan @cupakromer tetapi itu adalah alasan teknis. Desain antarmuka harus mengakomodasi apa yang diharapkan dapat dilakukan oleh pengguna.
Paling tidak, kita harus memberikan peringatan "Opsi filter tidak didukung types
" jika memungkinkan.
Saya hanya menggunakan loop untuk menyimpan beberapa penekanan tombol. (Dengan begitu saya juga bisa memasukkan modul ControllerMacros
tanpa harus menjadi BASAH.)
for type in [:controller, :request] do
config.include Devise::Test::ControllerHelpers, type: type
config.extend ControllerMacros, type: type
end
Tujuan saya adalah memiliki tipe untuk :controller & :model
saran di atas tidak berhasil pada akhirnya.
Saya mencoba untuk menghapus argumen tipe, dan berfungsi untuk keduanya : controller & : model
Komentar yang paling membantu
Anda harus menulis include lagi:
Kecocokan metadata sangat tepat. Jadi
type: [:controller, :request]
akan mengharapkan spesifikasi yang memiliki tipe yang ditentukan sebagai array.