لقد قمنا للتو بتضمين ما نسميه مواصفات الدخان أو مواصفات الميزات الأساسية في كلتا الهيكلين لـ الإضافات و القوالب.
تضمن هذه المواصفات أن الإضافة أو القالب الذي تعمل عليه لا يكسر الوظائف الأساسية لـ Discourse.
من السهل إضافة هذه المواصفات إلى إضافة أو قالب موجود:
للإضافة
# spec/system/core_features_spec.rb
RSpec.describe "Core features", type: :system do
before { enable_current_plugin }
it_behaves_like "having working core features"
end
للقالب
# spec/system/core_features_spec.rb
RSpec.describe "Core features", type: :system do
before { upload_theme_or_component }
it_behaves_like "having working core features"
end
إذا كنت بحاجة إلى تحديث العديد من المستودعات دفعة واحدة، يتوفر نص برمجي لأداة mass-pr الخاصة بنا.
إذا كانت الإضافة أو القالب الذي تعمل عليه يغير وظيفة أساسية لـ Discourse عن قصد، فمن الممكن تخطي بعض الأمثلة من مواصفات الميزات الأساسية:
it_behaves_like "having working core features", skip_examples: %i[login likes]
إليك القائمة الكاملة للكلمات المفتاحية لتخطي الأمثلة:
- login
- likes
- profile
- topics
- topics:read
- topics:reply
- topics:create
- search
- search:quick_search
- search:full_page