У меня есть выражение Entity Framework, которое работает, как и ожидалось, при выполнении реального кода, но не работает при выполнении тестов.
Запрос пытается найти все строки, в которых определенное поле заканчивается буквой.
var bars = await context.Bars.Where(b => EF.Functions.Like(b.Foo, "%[a-z]")).ToListAsync();
В своих тестах я использую базу данных в памяти, вызывая UseInMemoryDatabase. Все тестовые случаи работают как положено, за исключением тех, которые используют подобное выражение, которое содержит диапазон символов (например, [a-z]).
В моем примере база данных в памяти не будет соответствовать "123a", но будет соответствовать "123 [a-z]". Похоже, что база данных в памяти не понимает диапазоны символов в предложении Like.
Есть ли способ заставить базу данных в памяти понимать диапазоны символов при использовании EF.Functions.Like?