2011-04-10 01:50:33 +02:00
|
|
|
import testing ;
|
2013-09-03 03:19:42 +02:00
|
|
|
import feature : feature ;
|
2011-04-10 01:50:33 +02:00
|
|
|
|
2005-08-11 13:06:52 +02:00
|
|
|
use-project /torrent : .. ;
|
|
|
|
|
2009-04-10 10:40:13 +02:00
|
|
|
exe test_natpmp : test_natpmp.cpp /torrent//torrent
|
2009-11-29 08:06:38 +01:00
|
|
|
: <threading>multi <debug-iterators>on <invariant-checks>full ;
|
2009-04-10 10:40:13 +02:00
|
|
|
|
2013-07-20 03:02:15 +02:00
|
|
|
exe enum_if : enum_if.cpp /torrent//torrent
|
|
|
|
: <threading>multi <debug-iterators>on <invariant-checks>full ;
|
|
|
|
|
2015-07-16 07:44:27 +02:00
|
|
|
exe bdecode_benchmark : bdecode_benchmark.cpp /torrent//torrent
|
2015-03-12 06:20:12 +01:00
|
|
|
: <variant>release ;
|
|
|
|
|
2009-05-21 21:20:24 +02:00
|
|
|
explicit test_natpmp ;
|
2013-07-20 03:02:15 +02:00
|
|
|
explicit enum_if ;
|
2015-03-12 06:20:12 +01:00
|
|
|
explicit bdecode_benchmark ;
|
2009-05-21 21:20:24 +02:00
|
|
|
|
2013-09-20 16:14:29 +02:00
|
|
|
rule link_test ( properties * )
|
|
|
|
{
|
|
|
|
local result ;
|
|
|
|
if <link>shared in $(properties)
|
|
|
|
{
|
|
|
|
result +=
|
|
|
|
<library>libtorrent_test/<link>shared ;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
result +=
|
|
|
|
<library>libtorrent_test/<link>static ;
|
|
|
|
}
|
2013-09-25 03:45:23 +02:00
|
|
|
return $(result) ;
|
2013-09-20 16:14:29 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
rule link_libtorrent ( properties * )
|
|
|
|
{
|
|
|
|
local result ;
|
|
|
|
if <link>shared in $(properties)
|
|
|
|
{
|
|
|
|
result +=
|
2015-09-12 05:13:27 +02:00
|
|
|
<library>/torrent//torrent/<link>shared/<logging>on/<boost-link>shared/<export-extra>on/<debug-iterators>on ;
|
2013-09-20 16:14:29 +02:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
result +=
|
2015-09-12 05:13:27 +02:00
|
|
|
<library>/torrent//torrent/<link>static/<logging>on/<boost-link>static/<export-extra>on/<debug-iterators>on ;
|
2013-09-20 16:14:29 +02:00
|
|
|
}
|
2013-09-25 03:45:23 +02:00
|
|
|
return $(result) ;
|
2013-09-20 16:14:29 +02:00
|
|
|
}
|
|
|
|
|
2013-06-21 03:06:40 +02:00
|
|
|
lib libtorrent_test
|
|
|
|
: # sources
|
2015-06-20 17:08:26 +02:00
|
|
|
main.cpp
|
2015-05-31 14:21:16 +02:00
|
|
|
test.cpp
|
2013-06-21 03:06:40 +02:00
|
|
|
setup_transfer.cpp
|
|
|
|
dht_server.cpp
|
2014-02-23 02:32:55 +01:00
|
|
|
udp_tracker.cpp
|
2013-06-21 03:06:40 +02:00
|
|
|
peer_server.cpp
|
2016-01-31 03:33:47 +01:00
|
|
|
bittorrent_peer.cpp
|
|
|
|
print_alerts.cpp
|
2013-09-30 00:50:06 +02:00
|
|
|
web_seed_suite.cpp
|
2014-10-12 10:39:14 +02:00
|
|
|
swarm_suite.cpp
|
2015-04-24 05:48:08 +02:00
|
|
|
test_utils.cpp
|
2015-08-08 03:28:51 +02:00
|
|
|
settings.cpp
|
2016-01-22 05:32:20 +01:00
|
|
|
make_torrent.cpp
|
2013-06-23 19:36:00 +02:00
|
|
|
|
2013-06-21 03:06:40 +02:00
|
|
|
: # requirements
|
2013-06-23 19:36:00 +02:00
|
|
|
# this is used to determine whether
|
|
|
|
# symbols are exported or imported
|
|
|
|
<link>shared:<define>TORRENT_BUILDING_TEST_SHARED
|
2013-08-22 10:12:35 +02:00
|
|
|
<link>shared:<define>ED25519_BUILD_DLL
|
|
|
|
<include>../ed25519/src
|
2013-08-28 08:39:39 +02:00
|
|
|
<target-os>windows:<library>advapi32
|
2013-09-20 16:14:29 +02:00
|
|
|
<conditional>@link_libtorrent
|
2015-09-02 07:30:40 +02:00
|
|
|
<toolset>darwin:<cflags>-Wno-unused-command-line-argument
|
2016-04-25 23:22:09 +02:00
|
|
|
# disable warning C4275: non DLL-interface classkey 'identifier' used as base for DLL-interface classkey 'identifier'
|
|
|
|
<toolset>msvc:<cflags>/wd4275
|
2015-09-12 05:13:27 +02:00
|
|
|
<debug-iterators>on
|
2013-06-23 19:36:00 +02:00
|
|
|
|
|
|
|
: # default build
|
|
|
|
<link>shared
|
2015-02-07 02:01:48 +01:00
|
|
|
<logging>on
|
2013-09-18 10:42:30 +02:00
|
|
|
|
|
|
|
: # user-requirements
|
|
|
|
<link>shared:<define>TORRENT_LINK_TEST_SHARED
|
2015-09-12 05:13:27 +02:00
|
|
|
<debug-iterators>on
|
2015-04-12 08:39:16 +02:00
|
|
|
<logging>on
|
2015-08-08 03:28:51 +02:00
|
|
|
<include>.
|
2013-06-21 03:06:40 +02:00
|
|
|
;
|
|
|
|
|
2014-04-27 18:54:10 +02:00
|
|
|
explicit libtorrent_test ;
|
|
|
|
|
2013-08-28 08:39:39 +02:00
|
|
|
lib advapi32 : : <name>Advapi32 ;
|
|
|
|
|
2007-07-06 22:17:36 +02:00
|
|
|
project
|
2015-05-23 03:38:47 +02:00
|
|
|
: requirements
|
2013-09-20 16:14:29 +02:00
|
|
|
<conditional>@link_test
|
|
|
|
<conditional>@link_libtorrent
|
2015-09-02 07:30:40 +02:00
|
|
|
<toolset>darwin:<cflags>-Wno-unused-command-line-argument
|
2016-04-25 23:22:09 +02:00
|
|
|
# disable warning C4275: non DLL-interface classkey 'identifier' used as base for DLL-interface classkey 'identifier'
|
|
|
|
<toolset>msvc:<cflags>/wd4275
|
2016-05-08 15:58:13 +02:00
|
|
|
<toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS
|
2015-05-23 03:38:47 +02:00
|
|
|
: default-build
|
2008-03-23 06:33:47 +01:00
|
|
|
<threading>multi
|
2008-07-30 08:40:06 +02:00
|
|
|
<invariant-checks>full
|
2013-09-20 16:14:29 +02:00
|
|
|
<link>shared
|
2014-07-06 21:18:00 +02:00
|
|
|
<picker-debugging>on
|
2015-05-30 06:31:23 +02:00
|
|
|
;
|
2005-08-11 13:06:52 +02:00
|
|
|
|
2013-09-03 03:19:42 +02:00
|
|
|
feature launcher : none valgrind : composite ;
|
2014-11-09 12:17:13 +01:00
|
|
|
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 ;
|
2013-09-03 03:19:42 +02:00
|
|
|
|
2015-05-30 06:31:23 +02:00
|
|
|
test-suite libtorrent :
|
|
|
|
[ run
|
|
|
|
test_primitives.cpp
|
2016-05-06 03:38:57 +02:00
|
|
|
test_create_torrent.cpp
|
2015-05-30 06:31:23 +02:00
|
|
|
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
|
2015-06-21 08:28:15 +02:00
|
|
|
# test_random.cpp
|
2015-05-30 06:31:23 +02:00
|
|
|
test_utf8.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_string.cpp
|
|
|
|
test_xml.cpp
|
|
|
|
test_ip_filter.cpp
|
|
|
|
test_hasher.cpp
|
2015-09-08 22:12:54 +02:00
|
|
|
test_dht_storage.cpp
|
2015-05-30 06:31:23 +02:00
|
|
|
test_dht.cpp
|
|
|
|
test_block_cache.cpp
|
|
|
|
test_peer_classes.cpp
|
|
|
|
test_settings_pack.cpp
|
|
|
|
test_fence.cpp
|
2015-06-29 04:47:11 +02:00
|
|
|
test_dos_blocker.cpp
|
2015-08-09 23:54:10 +02:00
|
|
|
test_stat_cache.cpp
|
2015-08-24 17:40:29 +02:00
|
|
|
test_enum_net.cpp
|
2015-08-31 05:34:49 +02:00
|
|
|
test_linked_list.cpp
|
2015-08-23 09:23:51 +02:00
|
|
|
test_file_progress.cpp ]
|
2015-06-10 05:04:33 +02:00
|
|
|
|
2016-03-04 05:53:24 +01:00
|
|
|
[ run test_receive_buffer.cpp ]
|
2015-09-06 04:07:02 +02:00
|
|
|
[ run test_alert_manager.cpp ]
|
2015-08-23 09:23:51 +02:00
|
|
|
[ run test_direct_dht.cpp ]
|
|
|
|
[ run test_magnet.cpp ]
|
2009-04-26 02:32:19 +02:00
|
|
|
[ run test_storage.cpp ]
|
2013-05-31 18:33:06 +02:00
|
|
|
[ run test_session.cpp ]
|
2013-11-24 02:32:51 +01:00
|
|
|
[ run test_read_piece.cpp ]
|
2009-04-26 02:32:19 +02:00
|
|
|
|
2015-05-30 06:31:23 +02:00
|
|
|
[ run test_file.cpp ]
|
|
|
|
[ run test_fast_extension.cpp ]
|
|
|
|
[ run test_privacy.cpp ]
|
|
|
|
[ run test_recheck.cpp ]
|
2016-02-20 08:38:03 +01:00
|
|
|
[ run test_read_resume.cpp ]
|
2015-05-30 06:31:23 +02:00
|
|
|
[ run test_resume.cpp ]
|
2013-07-28 17:06:28 +02:00
|
|
|
[ run test_ssl.cpp ]
|
2011-09-17 23:15:42 +02:00
|
|
|
[ run test_tracker.cpp ]
|
2013-01-06 05:53:26 +01:00
|
|
|
[ run test_checking.cpp ]
|
2014-06-15 20:02:59 +02:00
|
|
|
[ run test_url_seed.cpp ]
|
2009-04-26 02:32:19 +02:00
|
|
|
[ run test_web_seed.cpp ]
|
2014-07-09 22:53:39 +02:00
|
|
|
[ run test_web_seed_redirect.cpp ]
|
2013-09-30 00:50:06 +02:00
|
|
|
[ run test_web_seed_socks4.cpp ]
|
|
|
|
[ run test_web_seed_socks5.cpp ]
|
2015-10-03 17:20:10 +02:00
|
|
|
[ run test_web_seed_socks5_no_peers.cpp ]
|
2013-09-30 00:50:06 +02:00
|
|
|
[ run test_web_seed_socks5_pw.cpp ]
|
|
|
|
[ run test_web_seed_http.cpp ]
|
|
|
|
[ run test_web_seed_http_pw.cpp ]
|
2013-11-03 19:27:24 +01:00
|
|
|
[ run test_web_seed_chunked.cpp ]
|
|
|
|
[ run test_web_seed_ban.cpp ]
|
2009-04-26 02:32:19 +02:00
|
|
|
[ run test_pe_crypto.cpp ]
|
|
|
|
|
2014-03-05 10:37:49 +01:00
|
|
|
[ run test_remap_files.cpp ]
|
2010-11-29 02:33:05 +01:00
|
|
|
[ run test_utp.cpp ]
|
2009-04-26 02:32:19 +02:00
|
|
|
[ run test_auto_unchoke.cpp ]
|
|
|
|
[ run test_http_connection.cpp ]
|
|
|
|
[ run test_torrent.cpp ]
|
|
|
|
[ run test_transfer.cpp ]
|
2014-10-12 10:39:14 +02:00
|
|
|
[ run test_time_critical.cpp ]
|
2007-12-30 10:36:01 +01:00
|
|
|
[ run test_pex.cpp ]
|
2015-06-14 22:41:32 +02:00
|
|
|
[ run test_priority.cpp ]
|
2015-06-06 20:59:04 +02:00
|
|
|
|
2015-08-09 23:54:10 +02:00
|
|
|
# turn these tests into simulations
|
2016-02-28 07:18:27 +01:00
|
|
|
[ run test_upnp.cpp ]
|
|
|
|
[ run test_lsd.cpp ]
|
2015-05-30 06:31:23 +02:00
|
|
|
;
|
2005-08-11 13:06:52 +02:00
|
|
|
|
2015-08-09 23:54:10 +02:00
|
|
|
# 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
|
|
|
|
;
|
|
|
|
|
2015-09-06 16:39:48 +02:00
|
|
|
# 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
|
|
|
|
;
|
|
|
|
|
2015-08-09 23:54:10 +02:00
|
|
|
explicit win-tests ;
|
|
|
|
|