रेल 3 लेआउट में तर्क का परीक्षण करने का सबसे अच्छा तरीका क्या है?एक लेआउट का परीक्षण करने के लिए आरएसपीसी का उपयोग
उदाहरण: जब कोई उपयोगकर्ता मेरी साइट पर साइन इन करता है, अगर उन्होंने ऑनबोर्डिंग प्रक्रिया पूरी नहीं की है तो मैं उन्हें सभी पृष्ठों पर स्क्रीन के शीर्ष पर एक अलर्ट दिखाता हूं। यह तर्क एप्लिकेशन लेआउट में रखा गया था। मैं बस एक विशेष कुंजी के लिए लॉग इन उपयोगकर्ता की जांच करता हूं। यदि कुंजी मौजूद नहीं है तो मैं अलर्ट दिखाता हूं। जैसे ही कुंजी मौजूद है (जिसका अर्थ है कि उन्होंने ऑनबोर्डिंग पूरी की है) मैं अलर्ट नहीं दिखाता हूं।
वर्तमान में मैं एक दृश्य के परीक्षण के साथ ऐसा करने का प्रयास कर रहा हूँ, लेकिन मैं नहीं के बराबर के लिए ActionView::Template::Error: undefined method
प्रमाणित 'के सभी प्रकार के हो रही है: आवेदन लेआउट सहित द्वारा NilClass` त्रुटियों और मैं नहीं कर सकते इस सुविधा का परीक्षण करने लगते हैं।
मुझे यह सुनिश्चित करने की ज़रूरत है कि मेरे पास यह परीक्षण के तहत है क्योंकि अगर किसी कारण से मेरे देवताओं में से एक गलती से इस सुविधा को तोड़ देता है (ऑनबोर्डिंग के साथ दिखाना देखें) तो हमें तुरंत निर्माण करने की आवश्यकता है।
कोड है कि मैं अपने लेआउट में परीक्षण करने के लिए कोशिश कर रहा हूँ इस तरह दिखता है: और
<% if user_signed_in? %>
<% unless current_user.has_completed_onboarding? %>
<div class="alert">
You cannot accept payments from your clients until you set up your payment gateway.
<%= link_to "Set up your", payment_gateway_path %> payment gateway. Its quick, we promise. :)
</div>
<% end %>
<% end %>
मुझे यकीन है कि अगर वे ज्ञानप्राप्ति विवरण नहीं उपलब्ध कराए गए हैं कि इस संदेश दिखाई देगा बनाना चाहते हैं तो वे प्रदान किया गया, तो यह संदेश न दिखाएं।