Make stale TX regressions assert observable behavior first

This commit is contained in:
evgeny committed 2026-10-26 14:57:24 +01:00
1 parent bbc9f750c3
commit f0df3d8848
2 files changed
+4 -3

No files matched your search

+1 -1
View File
@@ -33,7 +33,7 @@ extern "C" {
/* Зарегистрировать общий для процесса аудио-движок в call.c; повтор с тем же inst идемпотентен.
* init/destroy сериализованы lifecycle ядра; producers остановлены перед освобождением inst/ua.
* Лимит8 TX-задач относится к текущей привязке. Старые задачи не отправляют медиа и не меняют
* Лимит8 TX-задач относится к текущей привязке. Задачи прежних привязок не отправляют медиа и не меняют
* её счётчик/позднюю статистику; uasync освобождает их после callback либо при destroy. 0 = успех, -1 = нет inst. */
int call_audio_init(struct UTUN_INSTANCE* inst);
/* Снять регистрацию и инвалидировать TX-привязку; codec/jitter освобождаются отдельно через stop/release. */
+3 -2
View File
@@ -153,7 +153,6 @@ int main(int argc, char** argv) {
begin(inst, new_id);
initial_new = feed(new_id, 0);
retire_old.set_value(); worker.join(); /* Старый loop исполняет tasks после новой привязки. */
REQUIRE(contains("owner=0"));
} else if (!strcmp(mode, "current_expiry")) {
begin(inst, new_id);
REQUIRE(feed(new_id, 0) == 8);
@@ -181,7 +180,9 @@ int main(int argc, char** argv) {
REQUIRE(call_audio_init(&inst) == 0); /* Encoder и call generation пока не меняются. */
if (round) test_time += 2001;
drain(ua);
REQUIRE(sent_old == 0 && contains("owner=0"));
DEBUG_INFO(DEBUG_CATEGORY_CALL, "call-audio-tx: detached encoder round=%u sent_old=%u", round, sent_old);
REQUIRE(sent_old == 0);
REQUIRE(contains("owner=0"));
stats(old_id);
REQUIRE(!contains("TX timing") && !contains("TX dropped="));
}