TGViewer
Типичный программист Типичный программист @tproger · 78.1K subscribers
Post #14881 1.64K
18 тысяч тестов нашли то, что пропустили 185 обычных

При переносе robfig/cron с Go на Rust код компилировался, а все 185 модульных тестов проходили. Затем одинаковые расписания прогнали через обе реализации и сравнили результаты в 18 тысячах точек. Так вскрылась разница при переводе часов: несуществующее 02:30 Go переносил на 03:30, а библиотека chrono-tz сообщала, что такого локального времени нет.

В Rust пропущенный час стали сдвигать вперёд, после чего сравнительные тесты не нашли ни одного расхождения. Код проверки и история переноса показывают полезный подход: совместимость порта стоит доказывать одинаковым поведением на сложных входных данных, а не успешной сборкой.
  • 🍾 2
  • ❤ 1
  • 👍 1
  • 🥰 1
  • 🎉 1
  • 🏆 1
More from @tproger
  1. Oct 4, 2026Переход на ветку в присланном проекте запустил бы вредоносный Git-hook Разработчику Фрэнку…
  2. Oct 3, 2026Как поручить ИИ миграцию сайта и не потерять 400 страниц Сайт с сотнями маршрутов, формами…
  3. Oct 3, 2026Как HLS запускает видео до полной загрузки В HLS ролик разбит на независимые сегменты, обы…
  4. Oct 3, 2026Post #14877
  5. Oct 3, 2026Как поймать утечку целевой переменной до того, как поверить R² 0,998 Модель получила пять…
  6. Oct 3, 2026Два ядра загружены на 100%, а программа тормозит: где искать причину Профилировщик показыв…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →