2016-03-29 26 views
1

Birim testlerinde bir şeyler alay etmek için FakeItEasy kullanıyorum ama bir şekilde oldukça basit bir senaryo kurmayı başaramıyorum. yani. Belirli bir kullanıcı bir yönteme eriştiğinde istisna atmak istiyorum. Yardım böyle, saplama sonra Verify() yöntemini kaldırmak ...Sahte aramalar nasıl yapılır?

A.CallTo(() => m_fancyRepository 
       .CanIDoFancyThings(A<User> 
        .That 
        .Matches(u => u.Id.Equals(m_user.Id))) 
       .Verify()) 
       .Throws(new Exception("omg !!! ???!")); 

cevap

2

deneyin sayesinde iyi olurdu:

A.CallTo(() => m_fancyRepository.CanIDoFancyThings(
      A<User>.That.Matches(u => u.Id.Equals(m_user.Id)))) 
      .Throws(new Exception("omg !!! ???!")); 
+0

Büyük iş sayesinde) (doğrulama CanIDoFancyThings yöntemidir() döner. – eugeneK

+0

@eugeneK Hum, _FakeItEasy_ hiç kullanılmamış, bu yüzden _Moq_,: +1: gibi 'Verify' yöntemine sahip olduğunu düşünüyordum. Doğru cevap değil mi? XD –

+0

@ Joel Ramos Michaliszen daha sonra cevap doğru çünkü kodda kaçırdığım şey bu. A.CallTo, Örnekle doğrula gibidir. – eugeneK