diff --git a/tests/test_stream_service.c b/tests/test_stream_service.c index 947732fc8..13038cce2 100644 --- a/tests/test_stream_service.c +++ b/tests/test_stream_service.c @@ -1675,6 +1675,12 @@ static void relay_release_info(void) { static void test_supernode_relay(void) { int route_level = g_debug_config.category_levels[DEBUG_CATEGORY_ETCPROUTE]; debug_set_category_level(DEBUG_CATEGORY_ETCPROUTE, DEBUG_LEVEL_INFO); + /* Гонка поставщиков требует живых узлов; сон/пробуждение проверяются отдельным сценарием. */ + int activity[4]; + for (unsigned i = 0; i < 4; i++) { + activity[i] = nodes[i]->client_activity_requested; + CHECK(utun_set_client_activity(nodes[i], CLIENT_ACTIVITY_ACTIVE) == 0); + } struct TOPO_PEER_REQUEST *connections[3] = {0}; uint64_t deadline = get_time_tb() + 150000; for (unsigned i = 0; i < 3; i++) { @@ -1874,6 +1880,7 @@ static void test_supernode_relay(void) { CHECK(stream_local_get(nodes[1], &origin.descriptor, &local) == STREAM_WAIT); stream_close(viewers[2]); stream_close(publisher); relay_drop_source = 0; relay_role(1, 0, 104); + for (unsigned i = 0; i < 4; i++) CHECK(utun_set_client_activity(nodes[i], activity[i]) == 0); CHECK(etcp_router_bind(nodes[1], ETCP_RT_ID_STREAM, relay_route_handler) == 0); CHECK(etcp_router_bind(nodes[2], ETCP_RT_ID_STREAM, relay_status_handler) == 0); member_sync_remove_props_cbk(nodes[2], relay_test_provider, NULL);