Commit Graph
9 Commits
Author SHA1 Message Date
Rustam Khalimov 668c5b416d Перевести FakeTelegramGateway и FakeDiscoveryGateway на NSubstitute
ci / build-test (push) Canceled after 0s
Хелперы Support/TestTelegramGateway (журналы SetMonitor/Backfill/ReadSource,
сценарии Status/Catalog/сбоев по диалогам) и Support/TestDiscoveryGateway
(поиск/инфо/чтения/Join + NotFoundException на неожиданных методах).
Потребители (7 файлов) перетипизированы на .Gateway, фейк-классы удалены,
тесты 1340 зелёные.
2026-09-12 21:31:28 +03:00
Rustam Khalimov 9fd0df3c95 Перевести FakeTenantProvisioner, FailingTenantProvisioner и FakeRateLimitCounterStore на NSubstitute
ci / build-test (push) Canceled after 0s
Хелперы Support/TestTenantProvisioner (журнал схем + сценарий сбоя заданных схем,
счётчик через When/Do) и Support/TestRateLimitCounterStore (словарь окон,
Increment/GetCount/Reset/DeleteExpired читают состояние на момент вызова).
Потребители (9 файлов) перетипизированы, фейк-классы удалены, тесты 1340.
2026-09-12 20:41:24 +03:00
Rustam Khalimov b8c3f3e9aa Перевести FakeAiClassifier на NSubstitute
ci / build-test (push) Canceled after 0s
Хелпер Support/TestAiClassifier: вся поверхность фейка (FilterResult/ClassifyResult/
Throws-флаги/счётчики) сохранена, сервисы получают NSubstitute-подставку
(.Classifier), поведение читает состояние на момент вызова, счётчики через
When/Do. Потребители (5 файлов), фейк удалён, тесты 1340.
2026-09-12 20:31:15 +03:00
Rustam Khalimov 76a705a1d8 Перевести FakeGlobalSettingsStore на NSubstitute
ci / build-test (push) Canceled after 0s
Хелпер Support/TestGlobalSettingsStore: словарь состояния + NSubstitute-подставка
(GetAsync через Returns, SetAsync через When/Do), DI получает .Store.
Потребители (4 файла) перетипизированы, фейк удалён, тесты 1340.
2026-09-12 20:28:08 +03:00
Rustam Khalimov 28b9777fa0 Перевести FakeAiTools на NSubstitute
ci / build-test (push) Canceled after 0s
Хелпер Support/TestAiTools: по умолчанию оба метода бросают NotSupportedException
(семантика прежнего фейка — неожиданный вызов роняет тест), сценарии через
ReturnsFit/ThrowsOnEvaluate, счётчик EvaluateFitCalls -> Received/DidNotReceive.
Потребители (4 файла) перетипизированы на IAiTools, фейк удалён, тесты 1340.
2026-09-12 20:23:41 +03:00
Rustam Khalimov e3ade19353 Перевести FakeTenantRegistry на NSubstitute
ci / build-test (push) Canceled after 0s
Хелпер Support/TestRegistry.With: поиск/списки по фиксированному списку через
Returns с Arg-матчерами. Потребители (3 файла) перетипизированы на
ITenantRepository, фейк удалён, тесты 1340 зелёные.
2026-09-12 20:19:19 +03:00
Rustam Khalimov 688d24ce87 Перевести FakeRatesSource и FakeRatesListener на NSubstitute
ci / build-test (push) Canceled after 0s
Подставки собираются Substitute.For с фиксированным Returns (SourceWith),
проверки вызовов — Received/DidNotReceive. Фейк-классы удалены, тесты 1340
зелёные (один моргнувший тест TelegramIngressServiceTests — гонка порта
харнесса, не воспроизводится).
2026-09-12 19:47:55 +03:00
Rustam Khalimov c6332158fe Перевести FakeDiscoveryPacer на NSubstitute
ci / build-test (push) Canceled after 0s
Первый фейк из чек-листа задачи #1: Substitute.For<IDiscoveryPacer>, счётчики
DelayCalls -> Received/DidNotReceive, колбэк OnDelay -> When/Do. Фейк удалён,
тесты 1340 зелёные.
2026-09-12 00:07:27 +03:00
Rustam Khalimov 27c7831910 Deal — единая кодовая база
ci / build-test (push) Canceled after 0s
SaaS-мониторинг Telegram: ядро (модули Cards/Kanban/Pipeline/Tenants/Settings/
Discovery, Api, Infrastructure), сервисы telegram/ai/ml/storage, фронт Vue,
контракты и grpc-hosting, деплой-конфиги (dev/prod/observability/CI-раннер),
Gitea Actions CI, документация (ТЗ, техдок, api-map, код-стайл, планы, бэклог).

Текущее состояние: все этапы роадмапа 0–12 закрыты, сборка 5 sln 0/0,
тесты 1340/130/52/38/9 зелёные.
2026-09-11 23:56:47 +03:00