Microsoft Fakes: не удается загрузить связанные объекты - PullRequest
0 голосов
/ 31 января 2019

Нужна помощь в настройке простого модульного теста.Все выглядит хорошо, но мои запросы не выполняются, если в них есть include или group by.

Table1 - первичная таблица Table2 связана с Table1 с внешним ключом

Метод, который я пытаюсь проверить

public void GetSomeData(){

//There are other conditions that are part of query   
 var response = dbCtx.Table1.Include(x => x.Table2).Where(y => y.fiel1 == true);
 }

TestMethod

public void TestingSomething(){

  List<Table1> obj1= new List<Table1>();
  List<Table2> obj2 = new List<Table2>();

  using(ShimContext.Create()){
  ShimDbSet<Table1> shimDbSetTable1 = new ShimDbnSet<Table1>();
  ShimDbSet<Table2> shimDbSetTable2 = new ShimDbnSet<Table2>();
  shimDbSetTable1.Bind(obj1.AsQueryable());
  shimDbSetTable2.Bind(obj2.AsQueryable());

  ShimMyEntity.AllInstances.Table1Get = (a) => {return shimDbSetTable1.instance;}

  ShimMyEntity.AllInstances.Table2Get = (a) => {return shimDbSetTable2.instance;}

 //Call GetSomeData
 GetSomeData();

//Bunch of Asserts
}

При выполнении запроса в GetSomeData возвращается ошибка, что значение не может быть нулевым.Имя параметра Источник.

Я предполагаю, что это связано с связанной таблицей, недоступной при обработке таблицы 2.

Может кто-нибудь помочь мне узнать, как настроить тест, чтобы связанные объекты также могли быть загружены?

...