Rspec-rails: config.include penggunaan dengan cara berikut: config.include "ModuleName", ketik: "Beberapa tag di sini"

Dibuat pada 8 Apr 2015  ·  4Komentar  ·  Sumber: rspec/rspec-rails

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

Komentar yang paling membantu

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.

Semua 4 komentar

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

Apakah halaman ini membantu?
0 / 5 - 0 peringkat