2013-03-16 39 views

cevap

7

İpucu "Arabirim alayları için Constructor arguments geçilemez" hata iletisinde.

Arabirimlerden bir kurucuya sahip olmadığından, arabirimden oluşturulan sahte bir varsayılan kurucuya sahip olacaktır. Somut sınıfı değil, arayüzle alay ettiğini hatırlıyorum.

"Ancak mockLessonplannerAFactory ve BFactory ... kurucularında da bir IDateService geçmiştir."

Her ikisi de arabirimlerden alay konusu olduğundan, herhangi bir kurucu yoktur. Sahte sınıf, herhangi bir şeyden geçmesi gerekmeyen bir varsayılan kurucu oluşturacaktır.

+0

Evet, her şey yolunda giderse, mockDateService.Object öğesinin geçişini kaldırarak fark ettim. – Elisabeth

+0

Bu gerçek sorunu çözmez, alay kurulumunu nasıl değiştirirsiniz? –

+0

mockLessonPlanAFactory ve mockLessonPlanBFactory yapıcı parametrelerine ihtiyaç duymaz. Beton uygulamasının yapıcısında normal olarak geçen nesneleri kullanan herhangi bir yöntem veya özellik kendiliğinden sahte yöntemler/özelliklerdir ve bunları uygun bir değer döndürmek için ayarlarsınız (aksi takdirde gerçekten bu nesnelerle dalga geçemezsiniz). Gereksinim duyduğunuz şekilde yöntemleri ve özellikleri kurarsınız. –