Re[87]: Что такое Dependency Rejection
От: Sinclair Россия https://github.com/evilguest/
Дата: 05.03.24 16:59
Оценка:
Здравствуйте, ·, Вы писали:


P>>>>Я такого не говорил — это вы начали фантазировать, что придется ждать 5 минут и никак иначе не выйдет. Обоснования у вас никакого нет.

P>>·>Про 5 минут я не фантазировал, это твоя цитата.
P>>Я нигде не говорил, что юзер должен ждать 5 минут. Даже если профиль создаётся неделю, редактировать данные можно сразу.
·>Говорил, цитирую: чудесные вещи типа "после того, как сделал var u = service.CreateUser(...), нужно выждать не менее 5 минут перед service.UpdateUser(u, ...)".
Это я говорил. Это — реальный случай: парни, которые реализовывали API, завели его в ActiveDirectory с round-robin.
Объект "пользователь" в ихнем волшебном API создавался с "автосгенерённым паролем", коий предлагалось как-то заперсистить и донести до конечного пользователя.
С нашей стороны, конечно же, сразу была сделана обвязка этого API, которая принимала пароль от пользователя вместе со всеми остальными параметрами, и создавала объект в два вызова — CreateUser и UpdatePassword.
С моками всё работало прекрасно. И в первом же e2e тесте упало, потому что неумолимый round-robin роутил UpdatePassword на другой AD-контроллер, на котором свежесозданного user ещё нет, и нам прилетел 404.
А вот если подождать 5 минут, то скорее всего UpdatePassword сработает, потому что пройдёт репликация AD, и все контроллеры этого пользователя увидят.
Как вы такие вещи будете ловить при помощи моков — я так и не понял.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.