2016-07-20 7 views
9

मैं अपने पहले ऐप पर काम कर रहा हूं क्योंकि मैंने रेल 5 स्थापित किया था। जब मैंने नियंत्रक कार्यों के लिए अपने चश्मा चलाए, तो मेरे सभी परीक्षण पास होने के बावजूद मुझे चेतावनी संदेश मिला।रेल 5 नियंत्रक परीक्षण में परिवर्तन - 'डेविस :: टेस्टहेल्पर' को बहिष्कृत किया गया है और इसे डेविस से हटा दिया जाएगा। '

[Devise] including `Devise::TestHelpers` is deprecated and will be removed from Devise.  
For controller tests, please include `Devise::Test::ControllerHelpers` instead. 

तो spec/rails_helper.rb में मैं इस लाइन बदलने के लिए:

config.include Devise::TestHelpers, type: :controller 

config.include Devise::Test::ControllerHelpers 

लिए यह परिवर्तन चेतावनी चले जाओ बना है, लेकिन अब मॉडल के लिए चश्मा खराब हो चुकी हैं। (वे बदलाव से पहले गुजर रहे थे।) मुझे इसे कैसे ठीक करना चाहिए? धन्यवाद!

+1

क्या आप एक स्पेक से कोड जोड़ने के लिए कोड जोड़ सकते हैं? – neydroid

+0

@neydroid पहले जवाब ने इसे हल किया। दोनों मॉडलों और नियंत्रकों के लिए सभी चश्मे गुजर रहे हैं, और कोई और चेतावनी संदेश नहीं है। धन्यवाद! – emico7

उत्तर

14

आप निम्न करने के लिए अपने spec/rails_helper.rb फ़ाइल बदलना चाहिए:

config.include Devise::Test::ControllerHelpers, type: :controller 

यह सुनिश्चित होगा कि Devise::Test::ControllerHelpers मॉड्यूल केवल अपने नियंत्रक परीक्षण में शामिल किया जा रहा है। आपके मॉडल परीक्षण विफल होने का कारण यह है कि वह मॉड्यूल नियंत्रक परीक्षणों के लिए विशिष्ट है।

संबंधित मुद्दे