premiere-libtorrent/test/Jamfile

272 lines
5.9 KiB
Plaintext

import testing ;
import feature : feature ;
use-project /torrent : .. ;
exe test_natpmp : test_natpmp.cpp /torrent//torrent
: <threading>multi <debug-iterators>on <invariant-checks>full ;
exe enum_if : enum_if.cpp /torrent//torrent
: <threading>multi <debug-iterators>on <invariant-checks>full ;
exe bdecode_benchmark : bdecode_benchmark.cpp /torrent//torrent
: <variant>release ;
explicit test_natpmp ;
explicit enum_if ;
explicit bdecode_benchmark ;
rule link_test ( properties * )
{
local result ;
if <link>shared in $(properties)
{
result +=
<library>libtorrent_test/<link>shared ;
}
else
{
result +=
<library>libtorrent_test/<link>static ;
}
return $(result) ;
}
rule link_libtorrent ( properties * )
{
local result ;
if <link>shared in $(properties)
{
result +=
<library>/torrent//torrent/<link>shared/<boost-link>shared/<export-extra>on ;
}
else
{
result +=
<library>/torrent//torrent/<link>static/<boost-link>static/<export-extra>on ;
}
return $(result) ;
}
lib libtorrent_test
: # sources
main.cpp
test.cpp
setup_transfer.cpp
dht_server.cpp
udp_tracker.cpp
peer_server.cpp
bittorrent_peer.cpp
print_alerts.cpp
web_seed_suite.cpp
swarm_suite.cpp
test_utils.cpp
settings.cpp
make_torrent.cpp
: # requirements
# this is used to determine whether
# symbols are exported or imported
<link>shared:<define>TORRENT_BUILDING_TEST_SHARED
<link>shared:<define>ED25519_BUILD_DLL
<include>../ed25519/src
<target-os>windows:<library>advapi32
<conditional>@link_libtorrent
<toolset>darwin:<cflags>-Wno-unused-command-line-argument
# disable warning C4275: non DLL-interface classkey 'identifier' used as base for DLL-interface classkey 'identifier'
<toolset>msvc:<cflags>/wd4275
: # default build
<link>shared
: # user-requirements
<link>shared:<define>TORRENT_LINK_TEST_SHARED
<include>.
;
explicit libtorrent_test ;
lib advapi32 : : <name>Advapi32 ;
project
: requirements
<conditional>@link_test
<conditional>@link_libtorrent
<toolset>darwin:<cflags>-Wno-unused-command-line-argument
# disable warning C4275: non DLL-interface classkey 'identifier' used as base for DLL-interface classkey 'identifier'
<toolset>msvc:<cflags>/wd4275
<toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS
: default-build
<threading>multi
<invariant-checks>full
<link>shared
<picker-debugging>on
<debug-iterators>on
<logging>on
;
feature launcher : none valgrind : composite ;
feature.compose <launcher>valgrind : <testing.launcher>"valgrind --tool=memcheck -v --num-callers=20 --read-var-info=yes --track-origins=yes --error-exitcode=222 --suppressions=valgrind_suppressions.txt" <use-valgrind>on ;
test-suite libtorrent :
[ run
test_primitives.cpp
test_create_torrent.cpp
test_packet_buffer.cpp
test_timestamp_history.cpp
test_sha1_hash.cpp
test_bloom_filter.cpp
test_identify_client.cpp
test_merkle.cpp
test_resolve_links.cpp
test_crc32.cpp
test_heterogeneous_queue.cpp
test_ip_voter.cpp
test_sliding_average.cpp
test_socket_io.cpp
# test_random.cpp
test_gzip.cpp
test_bitfield.cpp
test_part_file.cpp
test_peer_list.cpp
test_torrent_info.cpp
test_time.cpp
test_file_storage.cpp
test_peer_priority.cpp
test_threads.cpp
test_tailqueue.cpp
test_bandwidth_limiter.cpp
test_buffer.cpp
test_piece_picker.cpp
test_bencoding.cpp
test_bdecode.cpp
test_http_parser.cpp
test_xml.cpp
test_ip_filter.cpp
test_hasher.cpp
test_dht_storage.cpp
test_dht.cpp
test_block_cache.cpp
test_peer_classes.cpp
test_settings_pack.cpp
test_fence.cpp
test_dos_blocker.cpp
test_stat_cache.cpp
test_enum_net.cpp
test_linked_list.cpp
test_file_progress.cpp ]
[ run test_string.cpp
test_utf8.cpp
]
[ run test_receive_buffer.cpp ]
[ run test_alert_manager.cpp ]
[ run test_direct_dht.cpp ]
[ run test_magnet.cpp ]
[ run test_storage.cpp ]
[ run test_session.cpp ]
[ run test_read_piece.cpp ]
[ run test_file.cpp ]
[ run test_fast_extension.cpp ]
[ run test_privacy.cpp ]
[ run test_recheck.cpp ]
[ run test_read_resume.cpp ]
[ run test_resume.cpp ]
[ run test_ssl.cpp ]
[ run test_tracker.cpp ]
[ run test_checking.cpp ]
[ run test_url_seed.cpp ]
[ run test_web_seed.cpp ]
[ run test_web_seed_redirect.cpp ]
[ run test_web_seed_socks4.cpp ]
[ run test_web_seed_socks5.cpp ]
[ run test_web_seed_socks5_no_peers.cpp ]
[ run test_web_seed_socks5_pw.cpp ]
[ run test_web_seed_http.cpp ]
[ run test_web_seed_http_pw.cpp ]
[ run test_web_seed_chunked.cpp ]
[ run test_web_seed_ban.cpp ]
[ run test_pe_crypto.cpp ]
[ run test_remap_files.cpp ]
[ run test_utp.cpp ]
[ run test_auto_unchoke.cpp ]
[ run test_http_connection.cpp ]
[ run test_torrent.cpp ]
[ run test_transfer.cpp ]
[ run test_time_critical.cpp ]
[ run test_pex.cpp ]
[ run test_priority.cpp ]
# turn these tests into simulations
[ run test_upnp.cpp ]
[ run test_lsd.cpp ]
;
# these are the tests run on appveyor, while the flapping ones are being
# transitioned into simulations
alias win-tests :
test_primitives
test_pe_crypto
test_remap_files
test_auto_unchoke
test_torrent
test_transfer
test_time_critical
test_pex
test_priority
test_storage
test_session
test_read_piece
test_file
test_fast_extension
test_recheck
test_resume
test_tracker
test_checking
;
# the openssl test hangs on the travis osx machine. difficult to debug
alias osx-tests :
test_primitives
test_alert_manager
test_direct_dht
test_magnet
test_storage
test_session
test_read_piece
test_file
test_fast_extension
test_privacy
test_recheck
test_resume
# test_ssl
test_tracker
test_checking
test_url_seed
test_web_seed
test_web_seed_redirect
test_web_seed_socks4
test_web_seed_socks5
test_web_seed_socks5_pw
test_web_seed_http
test_web_seed_http_pw
test_web_seed_chunked
test_web_seed_ban
test_pe_crypto
test_remap_files
test_utp
test_auto_unchoke
test_http_connection
test_torrent
test_transfer
test_time_critical
test_pex
test_priority
;
explicit win-tests ;