parametrelerinde geçersiz bir yöntemle alaylıyım NSubstitute uygulamasında yeniyim, void
yöntemini 2 out
parametresiyle eşleştirmeye çalışıyorum ve eminim yanlış yapıyorum. NSubstitute,
CustomerDataAccess
sınıfı vardır:
void GetCustomerWithAddresses(int customerId,
out List<Customer> customers,
out List<Address> addresses);
CustomerRepository
sonra CustomerDataAccess.GetCustomerWithAddresses
DAL yöntemini çağırdığında onun GetCustomer
yöntemi çağırır. DAL yöntemi daha sonra iki tane out
parametresini müşteri için, diğeri adresler için çıkarır. Depo yöntemi, daha sonra iki nesneyi DAL yönteminden, depoyu döndürdüğü bir iş alanına eşlemek için AutoMapper
10'u kullanır.
Şu ana kadar kullandığım kod şu anda çalışmıyor ve çalışmıyor. Araştırmam, bu sorunu çözmek için ne yapmam gerektiğini tanımlamam için bana yardımcı olmadı. out
parametremin değerini nasıl ayarlayabilirim?
// Arange
ICustomerDataAccess customerDataAccess = Substitute.For<ICustomerDataAccess>();
IList<Customer> customers;
IList<Address> addresses;
customerDataAccess.When(x => x.GetCustomerWithAddresses(
1, out customers, out addresses))
.Do(x =>
{
customers = new List<Customer>() { new Customer() { CustomerId = 1, CustomerName = "John Doe" } };
addresses = new List<Address>() { new Address() { AddressId = 1, AddressLine1 = "123 Main St", City = "Atlanta" } };
});
CustomerRepository sut = new CustomerRepository(customerDataAccess);
// Act
Customer customer = sut.GetCustomer(1);
// Assert
Assert.IsNotNull(customer);
İşe yarayanlar dizideki belirli parametrelere erişemediler. – NathanFisherSdk