IPrincipal
üzerinde yazdığım bir uzantı yöntemi için bazı birim testleri yazıyorum. hizmet vermek amacıyla, yardımcı sınıflar bir çift (kısalık için ihmal edilmiş arayüzleri değil-uygulanan üyeleri için bazı kodu) yarattık: salt okunur AncakSalt okunur üye içeren bir arabirim için bir birim sınama saplaması nasıl oluşturulur?
public class IPrincipalStub : IPrincipal
{
private IIdentity identityStub = new IIdentityStub();
public IIdentity Identity
{
get { return identityStub; }
set { identityStub = value; }
}
}
public class IIdentityStub : IIdentity
{
public string Name { get; set; } // BZZZT!!!
}
, IIdentity
arayüzünde Name
özelliği (IIDentity
arabirimi bir getter belirtir, ancak Name özelliği için bir belirleyici değildir).
Arabirim salt okunur özellik olarak tanımlanmışsa, sınama amacımdaki Name özelliğini sınama amacıyla nasıl girebilirim?
Oluşturucu? i.e 'IIdentityStub', Name parametresini alan parametreli bir kurucuya sahip olacaktır. – shahkalpesh
"BZZZT" iniz bir derleme hatası mıydı? Numunenizi iyi bir şekilde derleyebildim (Identity özelliğinde w/yarı-virgüller, yani). – micahtan
@micahtan: Evet, ama buna karşı bir sınama yazmaya çalıştığınızda ve sınamadaki "Name" değerini ayarladığınızda, derleyici "Name" öğesinin salt okunur olduğundan şikayet edecektir. IIDentity 'tanımlanmış bir tanımlayıcı yok. –