You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
592 lines
25 KiB
592 lines
25 KiB
# Tests Makefile.am for utun - all tests with new ll_queue library |
|
|
|
# All available tests (check_PROGRAMS runs via automake check-TESTS) |
|
check_PROGRAMS = \ |
|
test_ll_queue \ |
|
test_serialize \ |
|
test_stream_cipher \ |
|
test_stream_sign \ |
|
test_etcp_transport \ |
|
test_transport \ |
|
test_stcp \ |
|
test_packet_dump \ |
|
test_debug_categories \ |
|
test_config_debug \ |
|
test_memory_pool_and_config \ |
|
test_etcp_api \ |
|
test_etcp_crypto \ |
|
test_pkt_normalizer_standalone \ |
|
test_route_lib \ |
|
test_radix \ |
|
test_route6_lib \ |
|
test_etcp_router_unit \ |
|
test_etcp_router_faults \ |
|
test_etcp_lifecycle \ |
|
test_etcp_session \ |
|
test_topo_recovery \ |
|
test_etcp_minimal \ |
|
test_ipv6_sockets \ |
|
test_u_async_timeouts \ |
|
test_u_async_comprehensive \ |
|
test_etcp_two_instances \ |
|
test_etcp_simple_traffic \ |
|
test_etcp_100_packets \ |
|
test_etcp_reconnect \ |
|
test_etcp_seq_collision \ |
|
test_pkt_normalizer_etcp \ |
|
test_lwip_tcp \ |
|
test_u_async_performance \ |
|
test_etcp_router \ |
|
test_etcp_router_tcp \ |
|
test_etcp_router_reconnect \ |
|
test_etcp_bbr \ |
|
test_etcp_ping \ |
|
test_stcp_ping \ |
|
test_route_ping \ |
|
test_nat_detection \ |
|
test_nat_engine \ |
|
test_nat_transport \ |
|
test_nat_stress \ |
|
test_tcp_proxy_server \ |
|
test_udp_proxy \ |
|
test_icmp_proxy \ |
|
test_tcp_proxy_client \ |
|
test_socks_http_proxy \ |
|
test_socks_client \ |
|
test_bgp_route_exchange \ |
|
test_bgp_triangle \ |
|
test_broadcast \ |
|
test_conn_mgr \ |
|
test_conn_mgr_phases \ |
|
test_conn_mgr_handles \ |
|
test_conn_mgr_already_connected \ |
|
test_sock_match \ |
|
test_invite_group_create \ |
|
test_etcp_connect \ |
|
test_node_conn_direct \ |
|
test_db_sync \ |
|
test_merkle_sync \ |
|
test_chat_sync_stress \ |
|
test_chat_join \ |
|
test_chat_join_e2e \ |
|
test_dm_e2e \ |
|
test_call \ |
|
test_call_headless \ |
|
test_radio \ |
|
test_radio_headless \ |
|
test_radio_mesh \ |
|
test_stcp_traffic \ |
|
test_bbr_integration \ |
|
test_audio_compressor \ |
|
test_intensive_memory_pool \ |
|
test_tcp_io \ |
|
test_uasync_socket_race \ |
|
test_ntp \ |
|
test_async_dns \ |
|
test_opus_codec \ |
|
test_media_async \ |
|
test_media_index \ |
|
test_media_delivery_sql \ |
|
test_media_delivery_download \ |
|
test_media_download_timeout \ |
|
test_media_delivery_integration \ |
|
test_media_delivery_full \ |
|
test_media_delivery_chat \ |
|
test_etcp_link_stress \ |
|
test_reality_hello \ |
|
test_reality_bgp \ |
|
test_reality_config \ |
|
test_dm \ |
|
bench_timeout_heap \ |
|
bench_uasync_timeouts |
|
|
|
# Linux-only тест: требует root + dummy-интерфейсы + iproute2/netlink |
|
if OS_WINDOWS |
|
else |
|
check_PROGRAMS += test_auto_socket_dynamic |
|
endif |
|
|
|
# Долгие тесты: запускаются только вручную |
|
noinst_PROGRAMS = |
|
|
|
# Basic includes |
|
AM_CFLAGS = -g |
|
AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/lib -I$(srcdir) |
|
LIBUTUN = $(top_builddir)/src/libutun.a |
|
|
|
# Windows-specific libraries |
|
if OS_WINDOWS |
|
WIN_LIBS = -lws2_32 -liphlpapi -ladvapi32 -lbcrypt -ldbghelp |
|
else |
|
WIN_LIBS = |
|
endif |
|
|
|
# Crypto always uses OpenSSL |
|
CRYPTO_LIBS = -lcrypto |
|
|
|
# Common libraries (lib/dns.c собирается с -DDNS_RANDOM=RAND_bytes → нужен -lcrypto) |
|
COMMON_LIBS = $(top_builddir)/lib/libuasync.a $(CRYPTO_LIBS) -lpthread $(WIN_LIBS) @FFMPEG_LIBS@ $(top_builddir)/lib/libopus/libopus_internal.a -lm |
|
|
|
# Test definitions |
|
test_etcp_bbr_SOURCES = test_etcp_bbr.c |
|
test_etcp_bbr_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_bbr_LDADD = $(LIBUTUN) $(COMMON_LIBS) |
|
|
|
test_etcp_crypto_SOURCES = test_etcp_crypto.c |
|
test_etcp_crypto_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_crypto_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_stream_cipher_SOURCES = test_stream_cipher.c |
|
test_stream_cipher_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_stream_cipher_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_stream_sign_SOURCES = test_stream_sign.c |
|
test_stream_sign_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_stream_sign_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_reality_hello_SOURCES = test_reality_hello.c |
|
test_reality_hello_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_reality_hello_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_reality_bgp_SOURCES = test_reality_bgp.c |
|
test_reality_bgp_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/lib |
|
test_reality_bgp_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_reality_config_SOURCES = test_reality_config.c |
|
test_reality_config_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_reality_config_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_dm_SOURCES = test_dm.c |
|
test_dm_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_dm_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_transport_SOURCES = test_stcp_link.c |
|
test_transport_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_transport_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_transport_SOURCES = test_etcp_stcp.c |
|
test_etcp_transport_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_transport_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_stcp_SOURCES = test_stcp.c |
|
test_stcp_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_stcp_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_socks_client_SOURCES = test_socks_client.c |
|
test_socks_client_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_socks_client_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_two_instances_SOURCES = test_etcp_two_instances.c |
|
test_etcp_two_instances_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_two_instances_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_simple_traffic_SOURCES = test_etcp_simple_traffic.c |
|
test_etcp_simple_traffic_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_simple_traffic_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_ipv6_sockets_SOURCES = test_ipv6_sockets.c |
|
test_ipv6_sockets_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_ipv6_sockets_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_tcp_proxy_client_SOURCES = test_tcp_proxy_client.c |
|
test_tcp_proxy_client_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_socks_http_proxy_SOURCES = test_socks_http_proxy.c |
|
test_socks_http_proxy_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_lwip_tcp_SOURCES = test_lwip_tcp.c |
|
test_lwip_tcp_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_lwip_tcp_LDADD = $(LIBUTUN) $(COMMON_LIBS) |
|
|
|
test_etcp_router_SOURCES = test_etcp_router.c |
|
test_etcp_router_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_router_faults_SOURCES = test_etcp_router_faults.c |
|
test_etcp_router_faults_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_router_unit_SOURCES = test_etcp_router_unit.c |
|
test_etcp_router_unit_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_router_reconnect_SOURCES = test_etcp_router_reconnect.c |
|
test_etcp_router_reconnect_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_tcp_proxy_server_SOURCES = test_tcp_proxy_server.c |
|
test_tcp_proxy_server_CFLAGS = -I$(top_srcdir)/lib |
|
test_tcp_proxy_server_LDADD = $(COMMON_LIBS) |
|
|
|
test_udp_proxy_SOURCES = test_udp_proxy.c |
|
test_udp_proxy_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_icmp_proxy_SOURCES = test_icmp_proxy.c |
|
test_icmp_proxy_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_radix_SOURCES = test_radix.c |
|
test_radix_CFLAGS = -I$(top_srcdir)/lib |
|
test_radix_LDADD = $(COMMON_LIBS) |
|
|
|
test_route6_lib_SOURCES = test_route6_lib.c |
|
test_route6_lib_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_route6_lib_LDADD = $(LIBUTUN) $(COMMON_LIBS) |
|
|
|
test_etcp_minimal_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_100_packets_SOURCES = test_etcp_100_packets.c |
|
test_etcp_100_packets_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_100_packets_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_reconnect_SOURCES = test_etcp_reconnect.c |
|
test_etcp_reconnect_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_reconnect_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_seq_collision_SOURCES = test_etcp_seq_collision.c |
|
test_etcp_seq_collision_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_seq_collision_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_pkt_normalizer_etcp_SOURCES = test_pkt_normalizer_etcp.c |
|
test_pkt_normalizer_etcp_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_pkt_normalizer_etcp_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_pkt_normalizer_standalone_SOURCES = test_pkt_normalizer_standalone.c |
|
test_pkt_normalizer_standalone_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_pkt_normalizer_standalone_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_api_SOURCES = test_etcp_api.c |
|
test_etcp_api_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_api_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_ping_SOURCES = test_etcp_ping.c |
|
test_etcp_ping_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_ping_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_stcp_ping_SOURCES = test_stcp_ping.c |
|
test_stcp_ping_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_stcp_ping_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_route_ping_SOURCES = test_route_ping.c |
|
test_route_ping_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_route_ping_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_nat_detection_SOURCES = test_nat_detection.c |
|
test_nat_detection_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_nat_detection_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_nat_engine_SOURCES = test_nat_engine.c |
|
test_nat_engine_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_nat_engine_LDADD = $(LIBUTUN) $(COMMON_LIBS) |
|
|
|
test_nat_transport_SOURCES = test_nat_transport.c |
|
test_nat_transport_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_nat_transport_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_nat_stress_SOURCES = test_nat_stress.c |
|
test_nat_stress_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_nat_stress_LDADD = $(LIBUTUN) $(COMMON_LIBS) |
|
|
|
test_ll_queue_SOURCES = test_ll_queue.c |
|
test_ll_queue_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_ll_queue_LDADD = $(COMMON_LIBS) |
|
|
|
test_serialize_SOURCES = test_serialize.c |
|
test_serialize_CFLAGS = -I$(top_srcdir)/lib |
|
test_serialize_LDADD = $(COMMON_LIBS) |
|
|
|
test_intensive_memory_pool_SOURCES = test_intensive_memory_pool.c |
|
test_intensive_memory_pool_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_intensive_memory_pool_LDADD = $(COMMON_LIBS) |
|
|
|
test_tcp_io_SOURCES = test_tcp_io.c |
|
test_tcp_io_CFLAGS = -I$(top_srcdir)/lib |
|
test_tcp_io_LDADD = $(COMMON_LIBS) |
|
|
|
test_uasync_socket_race_SOURCES = test_uasync_socket_race.c |
|
test_uasync_socket_race_CFLAGS = -I$(top_srcdir)/lib |
|
test_uasync_socket_race_LDADD = $(COMMON_LIBS) |
|
|
|
test_ntp_SOURCES = test_ntp.c |
|
test_ntp_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_ntp_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_async_dns_SOURCES = test_async_dns.c |
|
test_async_dns_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_async_dns_LDADD = $(COMMON_LIBS) |
|
|
|
test_memory_pool_and_config_SOURCES = test_memory_pool_and_config.c |
|
test_memory_pool_and_config_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_memory_pool_and_config_LDADD = $(COMMON_LIBS) |
|
|
|
test_packet_dump_SOURCES = test_packet_dump.c |
|
test_packet_dump_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_packet_dump_LDADD = $(COMMON_LIBS) |
|
|
|
test_u_async_comprehensive_SOURCES = test_u_async_comprehensive.c |
|
test_u_async_comprehensive_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_u_async_comprehensive_LDADD = $(COMMON_LIBS) |
|
|
|
test_u_async_performance_SOURCES = test_u_async_performance.c |
|
test_u_async_performance_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_u_async_performance_LDADD = $(COMMON_LIBS) |
|
|
|
test_u_async_timeouts_SOURCES = test_u_async_timeouts.c |
|
test_u_async_timeouts_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_u_async_timeouts_LDADD = $(COMMON_LIBS) |
|
|
|
test_debug_categories_SOURCES = test_debug_categories.c |
|
test_debug_categories_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_debug_categories_LDADD = $(COMMON_LIBS) |
|
|
|
test_config_debug_SOURCES = test_config_debug.c |
|
test_config_debug_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_config_debug_LDADD = $(LIBUTUN) $(COMMON_LIBS) |
|
|
|
test_route_lib_SOURCES = test_route_lib.c |
|
test_route_lib_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_route_lib_LDADD = $(LIBUTUN) $(COMMON_LIBS) |
|
|
|
test_bgp_route_exchange_SOURCES = test_bgp_route_exchange.c |
|
test_bgp_route_exchange_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_bgp_route_exchange_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_bgp_triangle_SOURCES = test_bgp_triangle.c |
|
test_bgp_triangle_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_bgp_triangle_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_broadcast_SOURCES = test_broadcast.c |
|
test_broadcast_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_broadcast_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_conn_mgr_SOURCES = test_conn_mgr.c |
|
test_conn_mgr_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_conn_mgr_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_conn_mgr_phases_SOURCES = test_conn_mgr_phases.c |
|
test_conn_mgr_phases_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_conn_mgr_phases_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_conn_mgr_handles_SOURCES = test_conn_mgr_handles.c |
|
test_conn_mgr_handles_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_conn_mgr_handles_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_conn_mgr_already_connected_SOURCES = test_conn_mgr_already_connected.c |
|
test_conn_mgr_already_connected_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_conn_mgr_already_connected_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_sock_match_SOURCES = test_sock_match.c |
|
test_sock_match_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/lib |
|
test_sock_match_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_invite_group_create_SOURCES = test_invite_group_create.c |
|
test_invite_group_create_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_invite_group_create_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_connect_SOURCES = test_etcp_connect.c |
|
test_etcp_connect_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_connect_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_node_conn_direct_SOURCES = test_node_conn_direct.c |
|
test_node_conn_direct_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_node_conn_direct_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_db_sync_SOURCES = test_db_sync.c |
|
test_db_sync_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_db_sync_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_merkle_sync_SOURCES = test_merkle_sync.c |
|
test_merkle_sync_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/lib |
|
test_merkle_sync_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_chat_sync_stress_SOURCES = test_chat_sync_stress.c |
|
test_chat_sync_stress_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_chat_sync_stress_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_chat_join_SOURCES = test_chat_join.c |
|
test_chat_join_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_chat_join_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_chat_join_e2e_SOURCES = test_chat_join_e2e.c |
|
test_chat_join_e2e_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_chat_join_e2e_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_dm_e2e_SOURCES = test_dm_e2e.c |
|
test_dm_e2e_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/src/dm -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_dm_e2e_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_call_SOURCES = test_call.c |
|
test_call_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/src/dm -I$(top_srcdir)/src/call -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_call_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_call_headless_SOURCES = test_call_headless.c |
|
test_call_headless_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/src/dm -I$(top_srcdir)/src/call -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_call_headless_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_radio_SOURCES = test_radio.c |
|
test_radio_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/src/dm -I$(top_srcdir)/src/call -I$(top_srcdir)/src/radio -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_radio_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_radio_headless_SOURCES = test_radio_headless.c |
|
test_radio_headless_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/src/dm -I$(top_srcdir)/src/call -I$(top_srcdir)/src/radio -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_radio_headless_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_radio_mesh_SOURCES = test_radio_mesh.c |
|
test_radio_mesh_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/chat -I$(top_srcdir)/src/dm -I$(top_srcdir)/src/call -I$(top_srcdir)/src/radio -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/lib |
|
test_radio_mesh_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_stcp_traffic_SOURCES = test_stcp_traffic.c |
|
test_stcp_traffic_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_stcp_traffic_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_bbr_integration_SOURCES = bbr_integration/test_bbr_integration.c |
|
test_bbr_integration_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_bbr_integration_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
bench_timeout_heap_SOURCES = bench_timeout_heap.c |
|
bench_timeout_heap_CFLAGS = -I$(top_srcdir)/lib |
|
bench_timeout_heap_LDADD = $(COMMON_LIBS) |
|
|
|
bench_uasync_timeouts_SOURCES = bench_uasync_timeouts.c |
|
bench_uasync_timeouts_CFLAGS = -I$(top_srcdir)/lib |
|
bench_uasync_timeouts_LDADD = $(COMMON_LIBS) |
|
|
|
test_opus_codec_SOURCES = test_opus_codec.c |
|
test_opus_codec_CFLAGS = -I$(top_srcdir)/lib -I$(top_srcdir)/lib/libopus/include |
|
test_opus_codec_LDADD = $(COMMON_LIBS) $(top_builddir)/lib/libopus/libopus_internal.a -lm |
|
|
|
test_audio_compressor_SOURCES = test_audio_compressor.c |
|
test_audio_compressor_LDADD = $(COMMON_LIBS) -lm |
|
|
|
test_media_async_SOURCES = test_media_async.c |
|
test_media_async_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/media_async -I$(top_srcdir)/lib |
|
test_media_async_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_media_index_SOURCES = test_media_index.c |
|
test_media_index_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/media_delivery -I$(top_srcdir)/src/media_async -I$(top_srcdir)/lib |
|
test_media_index_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_media_delivery_sql_SOURCES = test_media_delivery_sql.c |
|
test_media_delivery_sql_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/media_delivery -I$(top_srcdir)/lib |
|
test_media_delivery_sql_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_media_delivery_download_SOURCES = test_media_delivery_download.c |
|
test_media_delivery_download_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/media_delivery -I$(top_srcdir)/src/media_async -I$(top_srcdir)/lib -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/chat |
|
test_media_delivery_download_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_media_download_timeout_SOURCES = test_media_download_timeout.c |
|
test_media_download_timeout_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/media_delivery -I$(top_srcdir)/src/media_async -I$(top_srcdir)/lib -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/chat |
|
test_media_download_timeout_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_media_delivery_integration_SOURCES = test_media_delivery_integration.c |
|
test_media_delivery_integration_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/media_delivery -I$(top_srcdir)/src/media_async -I$(top_srcdir)/lib -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/chat |
|
test_media_delivery_integration_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_link_stress_SOURCES = test_etcp_link_stress.c |
|
test_etcp_link_stress_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/lib |
|
test_etcp_link_stress_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_auto_socket_dynamic_SOURCES = test_auto_socket_dynamic.c |
|
test_auto_socket_dynamic_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/lib |
|
test_auto_socket_dynamic_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_media_delivery_full_SOURCES = test_media_delivery_full.c |
|
test_media_delivery_full_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/media_delivery -I$(top_srcdir)/src/media_async -I$(top_srcdir)/lib -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/chat |
|
test_media_delivery_full_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_media_delivery_chat_SOURCES = test_media_delivery_chat.c |
|
test_media_delivery_chat_CFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/media_delivery -I$(top_srcdir)/src/media_async -I$(top_srcdir)/lib -I$(top_srcdir)/src/transport_layer -I$(top_srcdir)/src/routing_layer -I$(top_srcdir)/src/chat |
|
test_media_delivery_chat_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
# Copy test configs to build directory (tests run from build/tests/) |
|
all-local: copy-test-configs |
|
|
|
copy-test-configs: $(check_PROGRAMS) |
|
@for conf in $(srcdir)/test_*.conf $(srcdir)/test_*.json; do \ |
|
if test -f "$$conf"; then \ |
|
cp -f "$$conf" "$(top_builddir)/tests/" 2>/dev/null || true; \ |
|
fi; \ |
|
done 2>/dev/null || true |
|
|
|
# Clean |
|
clean-local: |
|
-rm -f $(check_PROGRAMS) |
|
-rm -f $(top_builddir)/tests/test_*.conf $(top_builddir)/tests/test_*.json 2>/dev/null || true |
|
-rm -rf $(top_builddir)/tests/logs 2>/dev/null || true |
|
|
|
# Test logs directory |
|
TEST_LOG_DIR = $(top_builddir)/tests/logs |
|
|
|
# Custom check target that runs tests and saves logs to files |
|
check-local: $(check_PROGRAMS) |
|
@rm -f $(TEST_LOG_DIR)/*.log 2>/dev/null || true; $(MKDIR_P) $(TEST_LOG_DIR); \ |
|
G='\033[0;32m'; R='\033[0;31m'; Y='\033[0;33m'; N='\033[0m'; \ |
|
passed=0; \ |
|
failed=0; \ |
|
skipped=0; \ |
|
total=0; \ |
|
failed_tests=""; \ |
|
for test in $(check_PROGRAMS); do \ |
|
total=$$((total + 1)); \ |
|
logfile="$(TEST_LOG_DIR)/$$test.log"; \ |
|
if test -f "./$$test"; then \ |
|
start=$$(date +%s%N); \ |
|
if "./$$test" > "$$logfile" 2>&1; then \ |
|
end=$$(date +%s%N); \ |
|
elapsed_ms=$$(( (end - start) / 1000000 )); \ |
|
printf "$${G}[PASS]$${N} %s (%sms)\n" "$$test" "$$elapsed_ms"; \ |
|
passed=$$((passed + 1)); \ |
|
elif test $$? -eq 77; then \ |
|
end=$$(date +%s%N); \ |
|
elapsed_ms=$$(( (end - start) / 1000000 )); \ |
|
printf "$${Y}[SKIP]$${N} %s (requires root)\n" "$$test"; \ |
|
skipped=$$((skipped + 1)); \ |
|
else \ |
|
end=$$(date +%s%N); \ |
|
elapsed_ms=$$(( (end - start) / 1000000 )); \ |
|
printf "$${R}[FAIL]$${N} %s (%sms) (see %s)\n" "$$test" "$$elapsed_ms" "$$logfile"; \ |
|
failed=$$((failed + 1)); \ |
|
if test -z "$$failed_tests"; then \ |
|
failed_tests="$$test"; \ |
|
else \ |
|
failed_tests="$$failed_tests $$test"; \ |
|
fi; \ |
|
fi; \ |
|
else \ |
|
printf "$${Y}[SKIP]$${N} %s (not built)\n" "$$test"; \ |
|
skipped=$$((skipped + 1)); \ |
|
fi; \ |
|
done; \ |
|
echo ""; \ |
|
echo "=========================================="; \ |
|
echo "Test Results: $$passed passed, $$failed failed, $$skipped skipped ($$total total)"; \ |
|
echo "Log directory: $(TEST_LOG_DIR)"; \ |
|
echo "=========================================="; \ |
|
if test $$failed -gt 0; then \ |
|
echo ""; \ |
|
echo "Failed tests: $$failed_tests"; \ |
|
echo "Run 'cat $(TEST_LOG_DIR)/<test>.log' to see details"; \ |
|
exit 1; \ |
|
fi |
|
|
|
# Интеграционный тест tcp_proxy_full (требует sudo, TUN, iptables). Запускается из check.sh. |
|
.PHONY: check-proxy |
|
check-proxy: |
|
@cd $(srcdir)/tcp_proxy_full && bash run_test.sh |
|
|
|
# Burst-тест tcp_proxy: двусторонний byte-exact трафик со случайными idle (требует sudo). |
|
.PHONY: check-burst |
|
check-burst: |
|
@cd $(srcdir)/tcp_proxy_full && bash run_burst_test.sh |
|
|
|
# Нагрузочный тест tcp_proxy: N параллельных соединений, byte-exact, замер пропускной (требует sudo). |
|
.PHONY: check-load |
|
check-load: |
|
@cd $(srcdir)/tcp_proxy_full && bash run_load_test.sh |
|
|
|
test_etcp_lifecycle_SOURCES = test_etcp_lifecycle.c |
|
test_etcp_lifecycle_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_topo_recovery_SOURCES = test_topo_recovery.c |
|
test_topo_recovery_LDADD = $(LIBUTUN) $(CRYPTO_LIBS) $(COMMON_LIBS) |
|
|
|
test_etcp_session_SOURCES = test_etcp_session.c |
|
test_etcp_session_LDADD = $(LIBUTUN) $(COMMON_LIBS) |
|
|
|
test_etcp_router_tcp_SOURCES = test_etcp_router_tcp.c |
|
test_etcp_router_tcp_LDADD = $(LIBUTUN) $(COMMON_LIBS)
|
|
|