Files
tomato/auto_tests/scenarios/CMakeLists.txt
Green Sky 9b36dd9d99 Squashed 'external/toxcore/c-toxcore/' changes from c9cdae001..9ed2fa80d
9ed2fa80d fix(toxav): remove extra copy of video frame on encode
de30cf3ad docs: Add new file kinds, that should be useful to all clients.
d5b5e879d fix(DHT): Correct node skipping logic timed out nodes.
30e71fe97 refactor: Generate event dispatch functions and add tox_events_dispatch.
8fdbb0b50 style: Format parameter lists in event handlers.
d00dee12b refactor: Add warning logs when losing chat invites.
b144e8db1 feat: Add a way to look up a file number by ID.
849281ea0 feat: Add a way to fetch groups by chat ID.
a2c177396 refactor: Harden event system and improve type safety.
8f5caa656 refactor: Add MessagePack string support to bin_pack.
34e8d5ad5 chore: Add GitHub CodeQL workflow and local Docker runner.
f7b068010 refactor: Add nullability annotations to event headers.
788abe651 refactor(toxav): Use system allocator for mutexes.
2e4b423eb refactor: Use specific typedefs for public API arrays.
2baf34775 docs(toxav): update idle iteration interval see 679444751876fa3882a717772918ebdc8f083354
2f87ac67b feat: Add Event Loop abstraction (Ev).
f8dfc38d8 test: Fix data race in ToxScenario virtual_clock.
38313921e test(TCP): Add regression test for TCP priority queue integrity.
f94a50d9a refactor(toxav): Replace mutable_mutex with dynamically allocated mutex.
ad054511e refactor: Internalize DHT structs and add debug helpers.
8b467cc96 fix: Prevent potential integer overflow in group chat handshake.
4962bdbb8 test: Improve TCP simulation and add tests
5f0227093 refactor: Allow nullable data in group chat handlers.
e97b18ea9 chore: Improve Windows Docker support.
b14943bbd refactor: Move Logger out of Messenger into Tox.
dd3136250 cleanup: Apply nullability qualifiers to C++ codebase.
1849f70fc refactor: Extract low-level networking code to net and os_network.
8fec75421 refactor: Delete tox_random, align on rng and os_random.
a03ae8051 refactor: Delete tox_memory, align on mem and os_memory.
4c88fed2c refactor: Use `std::` prefixes more consistently in C++ code.
72452f2ae test: Add some more tests for onion and shared key cache.
d5a51b09a cleanup: Use tox_attributes.h in tox_private.h and install it.
b6f5b9fc5 test: Add some benchmarks for various high level things.
8a8d02785 test(support): Introduce threaded Tox runner and simulation barrier
d68d1d095 perf(toxav): optimize audio and video intermediate buffers by keeping them around
REVERT: c9cdae001 fix(toxav): remove extra copy of video frame on encode

git-subtree-dir: external/toxcore/c-toxcore
git-subtree-split: 9ed2fa80d582c714d6bdde6a7648220a92cddff8
2026-02-01 14:26:52 +01:00

101 lines
4.2 KiB
CMake

add_library(scenario_framework
framework/framework.c
framework/framework.h)
target_link_libraries(scenario_framework PUBLIC misc_tools)
if(TARGET toxcore_static)
target_link_libraries(scenario_framework PUBLIC toxcore_static)
else()
target_link_libraries(scenario_framework PUBLIC toxcore_shared)
endif()
if(TARGET pthreads4w::pthreads4w)
target_link_libraries(scenario_framework PUBLIC pthreads4w::pthreads4w)
elseif(TARGET PThreads4W::PThreads4W)
target_link_libraries(scenario_framework PUBLIC PThreads4W::PThreads4W)
elseif(TARGET Threads::Threads)
target_link_libraries(scenario_framework PUBLIC Threads::Threads)
endif()
function(scenario_test target)
add_executable(auto_${target}_test ${target}_test.c)
target_link_libraries(auto_${target}_test PRIVATE misc_tools scenario_framework)
add_test(NAME ${target} COMMAND auto_${target}_test)
set_tests_properties(${target} PROPERTIES TIMEOUT "${TEST_TIMEOUT_SECONDS}")
# add the source dir as environment variable, so the testdata can be found
set_tests_properties(${target} PROPERTIES ENVIRONMENT "LLVM_PROFILE_FILE=${target}.profraw;srcdir=${CMAKE_CURRENT_SOURCE_DIR}/..")
endfunction()
scenario_test(scenario_avatar)
scenario_test(scenario_bootstrap)
scenario_test(scenario_conference)
scenario_test(scenario_conference_double_invite)
scenario_test(scenario_conference_invite_merge)
scenario_test(scenario_conference_offline)
scenario_test(scenario_conference_peer_nick)
scenario_test(scenario_conference_query)
scenario_test(scenario_conference_simple)
scenario_test(scenario_conference_two)
scenario_test(scenario_dht_nodes_response_api)
scenario_test(scenario_events)
scenario_test(scenario_file_cancel)
scenario_test(scenario_file_seek)
scenario_test(scenario_file_transfer)
scenario_test(scenario_friend_connection)
scenario_test(scenario_friend_delete)
scenario_test(scenario_friend_query)
scenario_test(scenario_friend_read_receipt)
scenario_test(scenario_friend_request)
scenario_test(scenario_friend_request_spam)
scenario_test(scenario_group_by_id)
scenario_test(scenario_group_general)
scenario_test(scenario_group_invite)
scenario_test(scenario_group_message)
scenario_test(scenario_group_moderation)
scenario_test(scenario_group_save)
scenario_test(scenario_group_state)
scenario_test(scenario_group_sync)
scenario_test(scenario_group_tcp)
scenario_test(scenario_group_topic)
scenario_test(scenario_lan_discovery)
scenario_test(scenario_lossless_packet)
scenario_test(scenario_lossy_packet)
scenario_test(scenario_message)
scenario_test(scenario_netprof)
scenario_test(scenario_nospam)
scenario_test(scenario_overflow_recvq)
scenario_test(scenario_overflow_sendq)
scenario_test(scenario_reconnect)
scenario_test(scenario_save_friend)
scenario_test(scenario_save_load)
scenario_test(scenario_self_query)
scenario_test(scenario_send_message)
scenario_test(scenario_set_name)
scenario_test(scenario_set_status_message)
scenario_test(scenario_tox_many)
scenario_test(scenario_tox_many_tcp)
scenario_test(scenario_typing)
scenario_test(scenario_user_status)
if(BUILD_TOXAV)
scenario_test(scenario_toxav_basic)
scenario_test(scenario_toxav_many)
scenario_test(scenario_conference_av)
if(TARGET libvpx::libvpx)
target_link_libraries(auto_scenario_toxav_basic_test PRIVATE libvpx::libvpx)
target_link_libraries(auto_scenario_toxav_many_test PRIVATE libvpx::libvpx)
elseif(TARGET PkgConfig::VPX)
target_link_libraries(auto_scenario_toxav_basic_test PRIVATE PkgConfig::VPX)
target_link_libraries(auto_scenario_toxav_many_test PRIVATE PkgConfig::VPX)
else()
target_link_libraries(auto_scenario_toxav_basic_test PRIVATE ${VPX_LIBRARIES})
target_link_directories(auto_scenario_toxav_basic_test PRIVATE ${VPX_LIBRARY_DIRS})
target_include_directories(auto_scenario_toxav_basic_test SYSTEM PRIVATE ${VPX_INCLUDE_DIRS})
target_compile_options(auto_scenario_toxav_basic_test PRIVATE ${VPX_CFLAGS_OTHER})
target_link_libraries(auto_scenario_toxav_many_test PRIVATE ${VPX_LIBRARIES})
target_link_directories(auto_scenario_toxav_many_test PRIVATE ${VPX_LIBRARY_DIRS})
target_include_directories(auto_scenario_toxav_many_test SYSTEM PRIVATE ${VPX_INCLUDE_DIRS})
target_compile_options(auto_scenario_toxav_many_test PRIVATE ${VPX_CFLAGS_OTHER})
endif()
endif()