Standart Ruby Test::Unit
çerçevesini kullanarak Ruby'de korumalı ve özel yöntemleri test etmenin en iyi yolu nedir ?
Eminim birileri "kamu testlerini sadece birim test etmelisiniz; birim testine ihtiyaç duyuyorsa, korumalı veya özel bir yöntem olmamalı" dır ve dogmatik bir şekilde iddia edecektir, ama bunu tartışmakla gerçekten ilgilenmiyorum. Ben çeşitli yöntemler var olan korunan veya iyi ve geçerli nedenlerle özel, bu nedenle ben test etmek için bir yol gerekir, bu özel / korumalı yöntemler orta karmaşıktır ve sınıfta kamu yöntemler düzgün bu korunan / özel yöntemlerle bağlıdır korunan / özel yöntemler.
Bir şey daha var ... Genellikle belirli bir sınıf için tüm yöntemleri bir dosyaya koyarım ve o sınıf için birim testleri başka bir dosyaya koyarım. İdeal olarak, ana kaynak dosyasını olabildiğince basit ve anlaşılır tutmak için bu "korumalı ve özel yöntemlerin birim testi" işlevselliğini, ana kaynak dosyasına değil, birim test dosyasına uygulamak istiyorum.