Можете ли вы посоветовать мне, как написать модульный тест / создать макет для этого класса?
public class LoadRepository :Repository<Load, LoadModel>,ILoadRepository
{
IUSCanadaCityStateRepository _USCanadaCityStateRepository;
public LoadRepository(DbContext dbContext, IUSCanadaCityStateRepository USCanadaCityStateRepository) : base(dbContext)
{
_USCanadaCityStateRepository = USCanadaCityStateRepository;
}
public int GetPickUpLocations(int loadId)
{
var count = _dbSet.FromSql("SELECT COUNT(LocationID) as locationCount FROM vPickupLoc WHERE vPickupLoc.LoadID = @p0", loadId).ToArray();
return count[0].LoadLocations.Count;
}
public LoadCarrierInfo UpdateCarrierInfo(LoadCarrierInfo loadCarrierInfo)
{
return _dbSet.FromSql("UpdatePickCarrier @CarrierID,@LoadID, @Primary,@AssistingPortalID,@AssistingEmployeeID",
new SqlParameter("LoadID", SqlDbType.Int) { Value = loadCarrierInfo.LoadId },
new SqlParameter("Dispatcher", SqlDbType.VarChar) { Value = loadCarrierInfo.Dispatcher },
new SqlParameter("EmployeeID", SqlDbType.Int) { Value = 1 }, // logged in Employee instead
new SqlParameter("AssistingPortalID", SqlDbType.Int) { Value = loadCarrierInfo.AssistingPortalId },
new SqlParameter("AssistingEmployeeID", SqlDbType.VarChar) { Value = loadCarrierInfo.AssistingEmployeeId })
.Select(x=>new LoadCarrierInfo { }).FirstOrDefault();
}
}
К сожалению, все методы написаны таким образом, и я не уверен, сколько тестируемого может быть.
Большое спасибо!