All checks were successful
Desktop source guards / guards (push) Successful in 8s
Every MTProto session through a WEB proxy is a stream on a single
carrier whose relay keeps one FIFO per direction. Bulk media and
uploads filled that FIFO, every session's own 4-8s receive timer then
fired at once, and the reconnects piled new OPENs behind the same
backlog.
- Uplink: a scheduler serves interactive streams first, download
requests next and uploads round-robin in 64 KiB frames, with at most
1 MiB of upload bytes uncredited by the relay (one bounded batch in
front of a chat request); a burst guard keeps uploads from starving.
- Downlink: download streams keep only a share of a 2 MiB credit budget
(256 KiB..1 MiB each) instead of the full 4 MiB window, so media waits
in the backend's TCP buffers rather than in front of chat replies.
- Liveness: a WEB session asks the carrier before dropping its stream.
It waits while its request is still queued or the downlink is busy,
fails when the pipe is quiet for 8s after delivery, busy for 30s, or
after 64s total. A carrier with bytes outstanding and no relay
progress for 20s is recovered once, for all streams.
- A WEB session opens one stream instead of racing identical ones, and
a -404 on a WEB stream reconnects first; only a second -404 before any
reply decrypts destroys the temporary key.
- Uploads and downloads use at most two sessions per DC through a WEB
proxy, and slow upload parts are no longer cancelled and moved.
- web_carrier diagnostics report carrier state, stalls, per-class
stream and queue counts, credit and throughput every 10s of activity.
The policy lives in web_proxy_flow.{h,cpp} and is covered by the new
test_web_proxy_flow target and a source guard.
674 lines
16 KiB
CMake
674 lines
16 KiB
CMake
# This file is part of Telegram Desktop,
|
|
# the official desktop application for the Telegram messaging service.
|
|
#
|
|
# For license and copyright information please follow this link:
|
|
# https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
|
|
|
add_executable(test_text WIN32)
|
|
init_target(test_text "(tests)")
|
|
|
|
target_include_directories(test_text PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_text ${src_loc}
|
|
PRIVATE
|
|
tests/test_main.cpp
|
|
tests/test_main.h
|
|
tests/test_text.cpp
|
|
)
|
|
|
|
nice_target_sources(test_text ${res_loc}
|
|
PRIVATE
|
|
qrc/emoji_1.qrc
|
|
qrc/emoji_2.qrc
|
|
qrc/emoji_3.qrc
|
|
qrc/emoji_4.qrc
|
|
qrc/emoji_5.qrc
|
|
qrc/emoji_6.qrc
|
|
qrc/emoji_7.qrc
|
|
qrc/emoji_8.qrc
|
|
)
|
|
|
|
target_link_libraries(test_text
|
|
PRIVATE
|
|
desktop-app::lib_base
|
|
desktop-app::lib_crl
|
|
desktop-app::lib_ui
|
|
desktop-app::external_qt
|
|
desktop-app::external_qt_static_plugins
|
|
)
|
|
|
|
set_target_properties(test_text PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_dependencies(Telegram test_text)
|
|
|
|
target_prepare_qrc(test_text)
|
|
|
|
if (APPLE)
|
|
add_custom_command(TARGET test_text POST_BUILD
|
|
COMMAND ${CMAKE_COMMAND} -E make_directory
|
|
"$<TARGET_FILE_DIR:test_text>/Contents/Resources"
|
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
|
"${CMAKE_BINARY_DIR}/test_text.rcc"
|
|
"${CMAKE_BINARY_DIR}/lib_ui.rcc"
|
|
"$<TARGET_FILE_DIR:test_text>/Contents/Resources/"
|
|
)
|
|
endif()
|
|
|
|
add_executable(test_bot_callback_state WIN32)
|
|
init_target(test_bot_callback_state "(tests)")
|
|
|
|
target_include_directories(test_bot_callback_state PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_bot_callback_state ${src_loc}
|
|
PRIVATE
|
|
api/api_bot_callback_state.cpp
|
|
api/api_bot_callback_state.h
|
|
tests/test_bot_callback_state.cpp
|
|
)
|
|
|
|
target_precompile_headers(test_bot_callback_state
|
|
PRIVATE $<$<COMPILE_LANGUAGE:CXX,OBJCXX>:${src_loc}/stdafx.h>)
|
|
|
|
target_compile_definitions(test_bot_callback_state
|
|
PRIVATE
|
|
TDESKTOP_API_ID=${TDESKTOP_API_ID}
|
|
TDESKTOP_API_HASH=${TDESKTOP_API_HASH}
|
|
)
|
|
|
|
target_link_libraries(test_bot_callback_state
|
|
PRIVATE
|
|
tdesktop::td_scheme
|
|
desktop-app::lib_base
|
|
desktop-app::lib_crl
|
|
desktop-app::lib_ui
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_bot_callback_state
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_dependencies(Telegram test_bot_callback_state)
|
|
|
|
add_executable(test_export_date_range WIN32)
|
|
init_target(test_export_date_range "(tests)")
|
|
|
|
target_include_directories(test_export_date_range PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_export_date_range ${src_loc}
|
|
PRIVATE
|
|
export/export_date_range.h
|
|
tests/test_export_date_range.cpp
|
|
)
|
|
|
|
target_link_libraries(test_export_date_range
|
|
PRIVATE
|
|
desktop-app::lib_base
|
|
)
|
|
|
|
set_target_properties(
|
|
test_export_date_range
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_export_date_range
|
|
COMMAND test_export_date_range
|
|
)
|
|
|
|
add_dependencies(Telegram test_export_date_range)
|
|
|
|
add_executable(test_web_proxy_flow WIN32)
|
|
init_target(test_web_proxy_flow "(tests)")
|
|
|
|
target_include_directories(test_web_proxy_flow PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_web_proxy_flow ${src_loc}
|
|
PRIVATE
|
|
mtproto/web_proxy/web_proxy_flow.cpp
|
|
mtproto/web_proxy/web_proxy_flow.h
|
|
tests/test_web_proxy_flow.cpp
|
|
)
|
|
|
|
target_link_libraries(test_web_proxy_flow
|
|
PRIVATE
|
|
desktop-app::lib_base
|
|
)
|
|
|
|
set_target_properties(
|
|
test_web_proxy_flow
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_web_proxy_flow
|
|
COMMAND test_web_proxy_flow
|
|
)
|
|
|
|
add_dependencies(Telegram test_web_proxy_flow)
|
|
|
|
add_executable(test_mtproxy_client_hello WIN32)
|
|
init_target(test_mtproxy_client_hello "(tests)")
|
|
|
|
target_include_directories(test_mtproxy_client_hello PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_mtproxy_client_hello ${src_loc}
|
|
PRIVATE
|
|
mtproto/proxy/mtproxy/client_hello_builder.cpp
|
|
mtproto/proxy/mtproxy/client_hello_builder.h
|
|
mtproto/proxy/mtproxy/client_hello_constants.h
|
|
mtproto/proxy/mtproxy/client_hello_fragmentation.cpp
|
|
mtproto/proxy/mtproxy/client_hello_facts.cpp
|
|
mtproto/proxy/mtproxy/client_hello_facts.h
|
|
mtproto/proxy/mtproxy/client_hello_profile.cpp
|
|
mtproto/proxy/mtproxy/client_hello_profile.h
|
|
mtproto/proxy/mtproxy/client_hello_rules.cpp
|
|
tests/test_mtproxy_client_hello.cpp
|
|
)
|
|
|
|
target_precompile_headers(test_mtproxy_client_hello
|
|
PRIVATE $<$<COMPILE_LANGUAGE:CXX,OBJCXX>:${src_loc}/stdafx.h>)
|
|
|
|
target_compile_definitions(test_mtproxy_client_hello
|
|
PRIVATE
|
|
TDESKTOP_API_ID=${TDESKTOP_API_ID}
|
|
TDESKTOP_API_HASH=${TDESKTOP_API_HASH}
|
|
)
|
|
|
|
target_link_libraries(test_mtproxy_client_hello
|
|
PRIVATE
|
|
tdesktop::td_scheme
|
|
desktop-app::lib_base
|
|
desktop-app::lib_crl
|
|
desktop-app::lib_ui
|
|
desktop-app::external_qt
|
|
desktop-app::external_openssl
|
|
)
|
|
|
|
set_target_properties(
|
|
test_mtproxy_client_hello
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_dependencies(Telegram test_mtproxy_client_hello)
|
|
|
|
add_executable(test_mtproxy_tls_socket WIN32)
|
|
init_target(test_mtproxy_tls_socket "(tests)")
|
|
|
|
target_include_directories(test_mtproxy_tls_socket PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_mtproxy_tls_socket ${src_loc}
|
|
PRIVATE
|
|
tests/test_mtproxy_tls_socket.cpp
|
|
)
|
|
|
|
target_precompile_headers(test_mtproxy_tls_socket
|
|
PRIVATE $<$<COMPILE_LANGUAGE:CXX,OBJCXX>:${src_loc}/stdafx.h>)
|
|
|
|
target_compile_definitions(test_mtproxy_tls_socket
|
|
PRIVATE
|
|
TDESKTOP_API_ID=${TDESKTOP_API_ID}
|
|
TDESKTOP_API_HASH=${TDESKTOP_API_HASH}
|
|
)
|
|
|
|
target_link_libraries(test_mtproxy_tls_socket
|
|
PRIVATE
|
|
tdesktop::td_scheme
|
|
desktop-app::lib_base
|
|
desktop-app::lib_crl
|
|
desktop-app::lib_ui
|
|
desktop-app::external_qt
|
|
desktop-app::external_openssl
|
|
)
|
|
|
|
set_target_properties(
|
|
test_mtproxy_tls_socket
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_dependencies(Telegram test_mtproxy_tls_socket)
|
|
|
|
add_executable(test_e2e_cloud)
|
|
init_target(test_e2e_cloud "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud
|
|
COMMAND test_e2e_cloud
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud)
|
|
|
|
add_executable(test_e2e_cloud_group)
|
|
init_target(test_e2e_cloud_group "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_group PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_group ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_group.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_group
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_group
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_group
|
|
COMMAND test_e2e_cloud_group
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_group)
|
|
|
|
add_executable(test_e2e_cloud_identity)
|
|
init_target(test_e2e_cloud_identity "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_identity PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_identity ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_identity.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_identity
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
desktop-app::external_openssl
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_identity
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_identity
|
|
COMMAND test_e2e_cloud_identity
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_identity)
|
|
|
|
add_executable(test_e2e_cloud_storage)
|
|
init_target(test_e2e_cloud_storage "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_storage PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_storage ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_storage.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_storage
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
desktop-app::external_openssl
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_storage
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_storage
|
|
COMMAND test_e2e_cloud_storage
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_storage)
|
|
|
|
add_executable(test_e2e_cloud_vault)
|
|
init_target(test_e2e_cloud_vault "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_vault PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_vault ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_vault.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_vault
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
tdesktop::lib_argon2
|
|
desktop-app::external_qt
|
|
desktop-app::external_openssl
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_vault
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_vault
|
|
COMMAND test_e2e_cloud_vault
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_vault)
|
|
|
|
add_executable(test_e2e_cloud_inbound)
|
|
init_target(test_e2e_cloud_inbound "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_inbound PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_inbound ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_inbound.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_inbound
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_inbound
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_inbound
|
|
COMMAND test_e2e_cloud_inbound
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_inbound)
|
|
|
|
add_executable(test_e2e_cloud_sync)
|
|
init_target(test_e2e_cloud_sync "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_sync PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_sync ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_sync.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_sync
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_sync
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_sync
|
|
COMMAND test_e2e_cloud_sync
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_sync)
|
|
|
|
add_executable(test_e2e_cloud_bootstrap)
|
|
init_target(test_e2e_cloud_bootstrap "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_bootstrap PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_bootstrap ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_bootstrap.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_bootstrap
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
tdesktop::lib_openmls_bridge
|
|
desktop-app::external_openssl
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_bootstrap
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_bootstrap
|
|
COMMAND test_e2e_cloud_bootstrap
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_bootstrap)
|
|
|
|
add_executable(test_e2e_cloud_files)
|
|
init_target(test_e2e_cloud_files "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_files PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_files ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_files.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_files
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
desktop-app::external_openssl
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_files
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_files
|
|
COMMAND test_e2e_cloud_files
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_files)
|
|
|
|
add_executable(test_e2e_cloud_openmls)
|
|
init_target(test_e2e_cloud_openmls "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_openmls PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_openmls ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_openmls_abi.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_openmls
|
|
PRIVATE
|
|
tdesktop::lib_openmls_bridge
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_openmls
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_openmls
|
|
COMMAND test_e2e_cloud_openmls
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_openmls)
|
|
|
|
add_executable(test_e2e_cloud_openmls_application)
|
|
init_target(test_e2e_cloud_openmls_application "(tests)")
|
|
|
|
target_include_directories(
|
|
test_e2e_cloud_openmls_application
|
|
PRIVATE
|
|
${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_openmls_application ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_openmls_application.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_openmls_application
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
tdesktop::lib_openmls_bridge
|
|
desktop-app::external_openssl
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_openmls_application
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_openmls_application
|
|
COMMAND test_e2e_cloud_openmls_application
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_openmls_application)
|
|
|
|
add_executable(test_e2e_cloud_openmls_group_change)
|
|
init_target(test_e2e_cloud_openmls_group_change "(tests)")
|
|
|
|
target_include_directories(
|
|
test_e2e_cloud_openmls_group_change
|
|
PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_openmls_group_change ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_openmls_group_change.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_openmls_group_change
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
tdesktop::lib_openmls_bridge
|
|
desktop-app::external_openssl
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_openmls_group_change
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_openmls_group_change
|
|
COMMAND test_e2e_cloud_openmls_group_change
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_openmls_group_change)
|
|
|
|
add_executable(test_e2e_cloud_archive)
|
|
init_target(test_e2e_cloud_archive "(tests)")
|
|
|
|
target_include_directories(test_e2e_cloud_archive PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_archive ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_archive.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_archive
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
tdesktop::lib_openmls_bridge
|
|
desktop-app::external_openssl
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_archive
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_archive
|
|
COMMAND test_e2e_cloud_archive
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_archive)
|
|
|
|
add_executable(test_e2e_cloud_fork_recovery)
|
|
init_target(test_e2e_cloud_fork_recovery "(tests)")
|
|
|
|
target_include_directories(
|
|
test_e2e_cloud_fork_recovery
|
|
PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_fork_recovery ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_fork_recovery.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_fork_recovery
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
tdesktop::lib_openmls_bridge
|
|
desktop-app::external_openssl
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_fork_recovery
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_fork_recovery
|
|
COMMAND test_e2e_cloud_fork_recovery
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_fork_recovery)
|
|
|
|
add_executable(test_e2e_cloud_openmls_fork_recovery)
|
|
init_target(test_e2e_cloud_openmls_fork_recovery "(tests)")
|
|
|
|
target_include_directories(
|
|
test_e2e_cloud_openmls_fork_recovery
|
|
PRIVATE ${src_loc})
|
|
|
|
nice_target_sources(test_e2e_cloud_openmls_fork_recovery ${src_loc}
|
|
PRIVATE
|
|
tests/test_e2e_cloud_openmls_fork_recovery.cpp
|
|
)
|
|
|
|
target_link_libraries(test_e2e_cloud_openmls_fork_recovery
|
|
PRIVATE
|
|
tdesktop::td_e2e_cloud
|
|
tdesktop::lib_openmls_bridge
|
|
desktop-app::external_openssl
|
|
desktop-app::external_qt
|
|
)
|
|
|
|
set_target_properties(
|
|
test_e2e_cloud_openmls_fork_recovery
|
|
PROPERTIES
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
add_test(
|
|
NAME test_e2e_cloud_openmls_fork_recovery
|
|
COMMAND test_e2e_cloud_openmls_fork_recovery
|
|
)
|
|
|
|
add_dependencies(Telegram test_e2e_cloud_openmls_fork_recovery)
|