Мне нужно извлечь данные из БД через сервис, чтобы проверить собранные данные на структурную достоверность. то есть данные в БД указывают размеры частей захваченной каскадной строки (в определенном порядке), которые я высмеиваю. Так что не беспокойтесь.
Но я не хочу издеваться над данными службы.
Я хочу на самом деле получить данные БД, которые могут сильно меняться / различаться для разных клиентов и разных сценариев ios, или меняйте регулярно.
Таким образом, изменение макетированных данных для каждого сценария невозможно.
Служба реализует интерфейс, а также внедряет интерфейс уровня доступа к данным.
Я устанавливаю 'CallBase' как true, но я не получаю данные БД обратно. Пожалуйста помоги. Спасибо
public interface I_PartDao
{
ExBool List(out List<GXL_PartSizes> _PartSizes);
}
public class GXL_PartSizes
{
public int? ID { get; set; }
public int? PartLength { get; set; }
public int? SortOrder { get; set; }
public GXL_PartSizes()
{
this.ID = null;
this.PartLength = null;
this.SortOrder = null;
}
}
// Service Layer
public interface I_PartBo
{
ExBool List(out List<GXL_PartSizes> _PartSizes);
}
public class PartBo : I_PartBo
{
// For the injection of the Dao services (Dao handles the Ado CRUD operations against MSSQL dbase)
private I_PartDao PartDao;
public PartBo(I_PartDao dao_Part)
{
this.PartDao = dao_Part ?? throw new ArgumentNullException("dao_Part");
}
public ExBool List(out List<GXL_PartSizes> _PartSizes)
{
return this.PartDao.List(out _PartSizes);
}
}
[TestClass]
public class GXL_ConcatenatedStructures_Test
{
ExBool result = new ExBool(); // A class to handle error messages and statuses
private List<GXL_PartSizes> partSizes;
[TestMethod]
public void Test_Part_1_Length_matches_dbStructure_for_part1()
{
// Arrange
var mockService = new Mock<I_PartBo>();
// This is retrieved from the data posted back to the controller,..but for here and now, just a local populated strign var
var concatenatedString_part1 = "ABC";
// Act
//mockService.CallBase = true;
mockService
.Setup(x => x.List(out partSizes))
.Returns(result);
// Assert
Assert.AreEqual(concatenatedString_part1, partSizes[0].PartLength);
}
}