Обычно я проверяю, возвращает ли мой тест ожидаемый результат, например так:
company = company_fixture() # inserts a company in the database with default attributes
assert Profile.get_company!(company.id) == company
Но это не удается
Assertion with == failed
code: assert Profile.get_company!(company.id) == company
left: %MyApp.Profile.Company{
customers: [],
employees: [],
# more attributes, all matching
}
right: %Databaum.Profile.Company{
customers: #Ecto.Association.NotLoaded<association :customers is not loaded>,
employees: #Ecto.Association.NotLoaded<association :employees is not loaded>,
# more attributes, all matching
}
Каков рекомендуемый способ справиться с этим? Очевидно, я хочу избежать предварительной загрузки ассоциаций в тесте, потому что это позволит избежать проверки того факта, что они не предварительно загружены в Profile.get_company!/1
.
get_company
возвращает пустые списки для ассоциаций, но в приборе отсутствуют ассоциации, а вы говорите, чтоget_company
не выполняет предварительную загрузку. - person Peaceful James   schedule 08.10.2020