Commit Graph

1279 Commits

Author SHA1 Message Date
Steven Siloti 86fd8c3048 enable arbitrary direct dht requests and extension dht requests
If you're wondering why I used an alert for handling responses but not requests,
it's because the former was easy to do that way but the latter would have
involved some major refactoring or kludging. The DHT node is written with the
(IMO reasonable) assumption that all responses will be generated immediately, so
there was no way to easily accommodate getting a response asynchronously via
an alert.
2015-08-10 20:33:04 -07:00
Arvid Norberg 0dd4ff4f3c Merge pull request #78 from ssiloti/test_dht-fix
Test dht fix
2015-08-10 23:25:16 -04:00
Steven Siloti 2d9cf0f8b3 use test_name rather than __LINE__ for hidden test structs
When building tests from mutliple files together, the line number the test is
declared on is not guaranteed to be unique. If two tests happen to be on the
same line, one of them will not be run. You will then go crazy trying to figure
out why seemingly unrelated changes make the problem go away.
2015-08-10 20:05:16 -07:00
Steven Siloti 29ba738876 fix_dht mutable get test 2015-08-10 20:05:04 -07:00
arvidn 874bfcc89e transitioned test_super_seeding to a simulation (and remove the live test for test_swarm, which already has been transitioned to a simulation) 2015-08-10 10:18:36 -04:00
arvidn a75699eff1 move test_metadata_extension to a simulation instead of a live test 2015-08-10 09:17:41 -04:00
arvidn a3dbbd6a37 transition the test_pe_crypto system tests to be simulation 2015-08-10 06:57:51 -04:00
arvidn e38f461197 disable another flapping test on appveyor/windows 2015-08-09 18:23:01 -04:00
arvidn d977f2e68f attempt to make appveyor happy 2015-08-09 17:54:10 -04:00
arvidn 6068418def fix and re-enable simulations 2015-08-09 00:56:37 -04:00
Arvid Norberg 27c5a28637 Merge pull request #70 from thomas-yuan/master
Call callback function immediately when get data for mutable data.
2015-08-08 21:51:18 -04:00
Thomas e51b61870a Call callback function immediately when get mutable data. 2015-08-08 20:28:53 -04:00
arvidn a854fed12b simplify Jamfile by determining whether to use boost from source or from system installed version based on the BOOST_ROOT environment variable. This removes the build feature boost=source/boost=system 2015-08-08 19:18:05 -04:00
arvidn 3963d47385 fix shared linking against libtorrent_test 2015-08-08 18:13:43 -04:00
Dāvis 24b7fd48a6 Remove extra `\` in test/Makefile.am 2015-08-08 16:51:29 +03:00
arvidn 50925d7652 fix some more warnings 2015-08-08 02:48:01 -04:00
arvidn 46803b75f8 support building libtorrent in simulation mode (using libsimulator, which is a git submodule) 2015-08-07 21:31:59 -04:00
arvidn fb34607313 fix crash when loading a resume file where all files have priority 0 (and the torrent finishes before having downloaded anything) and add unit test for this case 2015-08-05 20:13:58 -04:00
arvidn 8473696d62 fix typo in previos commit 2015-08-02 15:54:42 -04:00
arvidn bb64887f30 merge total wanted fix from RC_1_0 2015-08-02 15:18:21 -04:00
arvidn 990aabe36f fix warnings and no-deprecated functions build 2015-08-01 19:55:36 -04:00
arvidn 52b4aed466 merge bdecode patch from RC_1_0. an empty string now produces an error rather than an empty bdecoded struct 2015-07-30 21:29:22 -04:00
arvidn 53360a5d4d add some slack to test_recheck 2015-07-28 19:18:15 -04:00
arvidn 580519fc19 disable irrelevant features in test_checking 2015-07-28 08:04:51 -04:00
arvidn f34f09ca58 merge more lenient utf8 conversion from RC_1_0 2015-07-27 08:59:38 -07:00
arvidn 105c105867 merge seed mode test and fixes from RC_1_0 2015-07-27 00:01:19 -07:00
Arvid Norberg 742548b69c Merge pull request #49 from ssiloti/plugin-exported-api
Only use exported types in the plugin api
2015-07-25 15:53:22 -07:00
Steven Siloti e6b3df3696 pass torrent_handle by const ref in the plugin api 2015-07-25 09:57:55 -07:00
arvidn 40c7596da9 merge loading of piece priorities from resume data fix from RC_1_0 2015-07-24 22:34:53 -07:00
Steven Siloti fbc67b4e21 switch to torrent_handle in plugin api 2015-07-23 19:52:23 -07:00
Arvid Norberg a1b73317ce Merge pull request #37 from jpetso/master
Progress towards a workable CMake build
2015-07-20 09:49:37 -07:00
Jakob Petsovits 991f0c2a45 Rename test_bdecode_performance to bdecode_benchmark, fix CMake issues.
It's not a test as such, since it's got its own main() that takes
arguments, doesn't return a result that can be directly compared
against expected results, and doesn't make use of the test_common
infrastructure.

The CMake build attempts to build all files named test_*.cpp with
test_common, whose main() and load_file() symbols clash with those
that the benchmark provides. Instead of making an exception, let's
rename it to something that doesn't start with "test_". Its usage
message even claims it's called bdecode_benchmark, so we use that.

Also, complete the file listing for test_common in CMake and use
an OBJECT pseudo-library there instead of STATIC. It's just as good
and jives better with having symbols provided by the executable.
(Follow-up patch in the works to provide Asio symbols that way.)

test_natpmp is a proper test but doesn't currently build,
so exclude it from the build for now.
2015-07-17 20:59:39 -04:00
Jakob Petsovits 79947dbd2a Remove the last bits of TORRENT_DHT_VERBOSE_LOGGING. 2015-07-17 20:13:14 -04:00
Jakob Petsovits 2a22ecfcce Remove unused mentions of non-existent class. 2015-07-17 20:13:14 -04:00
Jakob Petsovits b0f06504fb Avoid a clash of exported symbols, put them into anonymous namespaces. 2015-07-17 20:11:05 -04:00
arvidn 7a3cabfe12 fixed some resume issues, specifically around file priorities and override resume data 2015-07-16 21:56:06 -04:00
Jakob Petsovits 277917ec6a Avoid more warnings when building tests. 2015-07-16 14:55:14 -04:00
Jakob Petsovits cf9a009fb8 Avoid warnings when building tests. 2015-07-16 14:55:05 -04:00
arvidn 94e41538b6 fix SSL web-seed test 2015-07-16 00:44:03 -04:00
Mikhail Titov bfb3602634 Test compact i2p response 2015-07-14 14:13:11 -05:00
Mikhail Titov 007a580207 Options to use lowercase base32 encoding without padding 2015-07-14 12:41:12 -05:00
Arvid Norberg 6241958aee Merge pull request #27 from Chocobo1/py2
Project cleanup
2015-07-12 10:58:30 -04:00
Chocobo1 a59d1d3240 Add/fix shebang in python scripts, add execute permission (linux), remove whitespace/tabs at end of line 2015-07-12 14:24:01 +08:00
arvidn 2739def57f minor cleanups. use libtorrent typedefs for asio. failing to bind IPv6 UDP socket is no longer fatal. removed some redundant listen_failed_alerts 2015-07-11 23:01:27 -04:00
Chocobo1 e8a02b85b8 Remove duplicate 2015-07-11 15:45:18 +08:00
Arvid Norberg bbe51268d3 Merge pull request #23 from Chocobo1/igd_version
Add support for IGD version 2
2015-07-10 19:20:51 -04:00
Chocobo1 329d797342 Add test case for igd_version 2015-07-09 20:11:24 +08:00
Chocobo1 70fa9098a8 Fix error when building test_file_progress, missed in e2784df 2015-07-09 20:11:23 +08:00
arvidn 82bb923096 fix python typo 2015-07-08 00:05:13 -04:00
arvidn c5614b691f export file_progress class when building unit tests. fix to web_server.py (used for unit tests) 2015-07-07 23:46:33 -04:00
arvidn e2784df13c factor out file progress tracking from the torrent class 2015-06-28 22:47:11 -04:00
arvidn b4c3c40380 simplify settings in test_priority.cpp 2015-06-27 16:16:18 -04:00
arvidn 3b83c5418c attempt to make starting proxy server for tests more reliable 2015-06-24 20:51:23 -04:00
arvidn 9fc4968dc4 attempt to make start_web_server more robust in the tests 2015-06-22 23:55:47 -04:00
arvidn 8528a74828 fix bug in test_http_connection 2015-06-21 23:06:08 -04:00
arvidn 08016494a9 split up test_http_connection into smaller test cases 2015-06-21 12:41:50 -04:00
arvidn d704c00615 disable test_random. 2015-06-21 02:28:15 -04:00
arvidn 7d2deb01db split up test_storage into smaller test cases to improve output on failures 2015-06-20 22:34:44 -04:00
arvidn 3755a77a64 attempt to trouble shoot missing backtraces on linux 2015-06-20 16:36:23 -04:00
arvidn adc63d2b88 improve random entropy when picking port for web_server in test 2015-06-20 14:11:03 -04:00
arvidn e5f68dafc9 split up test_ssl into smaller test cases to improve output on failure 2015-06-20 12:46:40 -04:00
arvidn 2321bfe5fa fix shared linking of tests 2015-06-20 12:08:49 -04:00
arvidn 8cf9357aa8 move test main into test library to avoid redundant recompiling and hopefully speed up the testing a bit 2015-06-20 11:08:26 -04:00
arvidn 1450a692e4 fix test_identify_client build with deprecated functions turned off 2015-06-19 23:54:38 -04:00
arvidn e4bc4fc115 improve reliability of test_tracker 2015-06-19 01:43:09 -04:00
arvidn a500ff57be improve logging of the choker and reliability of the test_auto_unchoke 2015-06-19 01:43:09 -04:00
arvidn 8959971dd3 merge http scrape fix from RC_1_0 2015-06-18 01:05:36 -04:00
arvidn 184a1aa422 split up the tests in test_pe_crypto into multiple test cases, to improve output on failure 2015-06-17 21:55:27 -04:00
arvidn ab2d187001 attempt to make test_utp and swarm_suite more reliable 2015-06-17 19:36:26 -04:00
arvidn 0a67a2dd67 fix test_web_seed_chunked 2015-06-17 18:05:27 -04:00
arvidn 27c5da9a31 attempt to make test_tracker a bit more reliable 2015-06-17 01:34:26 -04:00
arvidn f7de7abec0 separate some more test cases to improve test output 2015-06-17 00:50:58 -04:00
arvidn 8d408c4c86 add shortcut in async resolver for raw IPs. 2015-06-16 23:45:05 -04:00
arvidn ee6847293f attempt to make test_tracker more reliable by disabling unnecessary features 2015-06-16 01:31:06 -04:00
arvidn c1913a97f3 attempt to make setup_transfer more reliable by waiting for torrents to transition to downloading state before connecting peers 2015-06-15 22:00:02 -04:00
arvidn bd2bcf12bc fix bug on write-only disk errors (it's not supposed to stop the torrent) 2015-06-15 02:27:09 -04:00
arvidn 3c74ab01a4 disable local peer discovery in test_privacy, to avoid finding random peers, polluting the test 2015-06-14 22:05:27 -04:00
arvidn 4224310c6f disable tests of extensions when they are disabled by the build config 2015-06-14 21:19:27 -04:00
arvidn e4e46241a8 fix reliability of swarm tests 2015-06-14 16:41:32 -04:00
arvidn 5cb095f6d2 support using 0 disk threads (to perform disk I/O in network thread) 2015-06-14 16:00:04 -04:00
arvidn db76ba759d improve some tests 2015-06-14 15:48:11 -04:00
arvidn 99c0542289 add option to not redirect output from tests 2015-06-13 18:52:17 -04:00
arvidn cfb96f2a35 fix silly typo 2015-06-10 21:39:14 -04:00
arvidn 5e5e31cf9a fix test privacy to not destruct session, potentially, after other global destructors 2015-06-10 21:10:22 -04:00
arvidn 0d6e65ec24 improve reliability of some of the unit tests 2015-06-10 01:22:01 -04:00
arvidn 6e68429117 split out test_upnp as its own test 2015-06-09 23:04:33 -04:00
arvidn 3f3b7d494c disable some redundant features in tests to make them not interfere with the test itself 2015-06-07 17:54:08 -04:00
arvidn 72d3bc0b8e split up test_fast_extension into multiple test cases 2015-06-07 15:31:34 -04:00
arvidn 025d1857c1 disable some more tests that aren't reliable yet 2015-06-07 09:29:42 -04:00
arvidn d997181524 split up super seeding unit test 2015-06-07 09:27:23 -04:00
arvidn ac04ee5ef3 fix typo in settings_pack 2015-06-07 09:23:04 -04:00
arvidn 9957c00def disable test_priority for now 2015-06-06 14:59:04 -04:00
arvidn 9af8841244 remove some unnecessary asio typedefs in the libtorrent namespace, just pull ip::tcp and ip::udp 2015-06-06 13:49:18 -04:00
arvidn 09a01a777a simplified test_priority 2015-06-06 12:10:43 -04:00
arvidn b5a477d7fd split up some more tests into smaller test cases for easier diagnosing 2015-06-06 02:42:23 -04:00
arvidn 7d2708405b split up test_privacy to more easily identify failures (and to suppress output from successfult tests) 2015-06-06 02:23:56 -04:00
arvidn 41533205be drop support for boost 1.35 and fix some more references to the asio namespace 2015-06-06 02:10:53 -04:00
arvidn 389ffc622c don't pull in the asio namespace in libtorrent. refer to it by boost::asio 2015-06-06 01:24:25 -04:00
arvidn 48bc00cbb7 attempt to make unit tests more deterministic 2015-06-05 23:02:07 -04:00
arvidn 15dd15d0d6 fix no-deprecated build. extend .travis.yml to build the 3 test configurations too. rename README to README.rst 2015-06-05 02:31:52 -04:00
arvidn 393f98f9ee fix gcc build of test_dos_blocker. update README and travis.yml 2015-06-04 21:58:02 -04:00
Arvid Norberg 5cc701df54 improve test_tracker 2015-06-03 02:37:59 +00:00
Arvid Norberg d8c0632c78 add some bdecoding unit tests 2015-06-02 03:06:48 +00:00
Arvid Norberg 5d6cba438d merged changes from RC_1_0 2015-06-02 01:14:52 +00:00
Arvid Norberg e35d8d3933 fix unit test 2015-05-31 17:28:37 +00:00
Arvid Norberg f6eb3e8c74 test names 2015-05-31 17:16:44 +00:00
Arvid Norberg b0eabd532c some test fixes 2015-05-31 16:14:46 +00:00
Arvid Norberg c8443d0c7c msvc fixes 2015-05-31 12:21:16 +00:00
Arvid Norberg 84849f3afd some msvc fixes 2015-05-30 21:46:59 +00:00
Arvid Norberg d9813ca56d split up file unit tests into smaller pieces 2015-05-30 21:10:34 +00:00
Arvid Norberg 3073be4bbd fix ip_voter test and try to narrow down flapping in test heterogeneous test 2015-05-30 18:42:04 +00:00
Arvid Norberg 2714e3d4ba fix ip_voter unit test 2015-05-30 18:28:09 +00:00
Arvid Norberg f9c9d0ad0d merge small unit tests to make running the tests quicker. expand the test framework a bit. add ax_boost_random.m4 script to link against boost.random correctly from makefile. 2015-05-30 04:31:23 +00:00
Arvid Norberg e44c8e9002 optimize logging of DHT packets by deferring copying and printing, to only do it if the alert category is enabled 2015-05-28 20:36:22 +00:00
Arvid Norberg 647a6dba54 moved some tests to the correct place and factor out some tests from test_primitives.cpp in order to be able to track test coverage better 2015-05-27 21:27:41 +00:00
Arvid Norberg 027789b475 fix test_primitives build 2015-05-23 02:00:38 +00:00
Arvid Norberg 9856a1fe0c break out more tests from test_primitives 2015-05-23 01:38:47 +00:00
Arvid Norberg 607e708bc4 fix warnings 2015-05-19 03:13:49 +00:00
Arvid Norberg 051ca6b22c fix warnings 2015-05-18 05:32:18 +00:00
Arvid Norberg 9ee98b3ed1 fix build warnings 2015-05-18 05:04:55 +00:00
Arvid Norberg 71ee44ae5e fix build issue, some warnings 2015-05-17 23:32:13 +00:00
Arvid Norberg b480f40a98 fix linux build and update code coverage script 2015-05-17 21:00:47 +00:00
Arvid Norberg be60dfc0a9 minor whitespace cleanup 2015-05-17 18:59:35 +00:00
Arvid Norberg 58ae099cf8 clean up disk_io_job a bit to avoid old-style casts 2015-05-16 20:41:37 +00:00
Arvid Norberg 99de70604a remove dht-verbose logging build configuration. tie it to the main logging configuration (which now is on by default) and make it less costly when dht logging alerts are disabled 2015-05-16 19:29:49 +00:00
Arvid Norberg 12c9d3de26 fix more warnings 2015-05-16 18:35:47 +00:00
Arvid Norberg 6a87dc7d84 fix some warnings 2015-05-16 16:24:11 +00:00
Arvid Norberg 72e0e331a5 fix SSL build 2015-05-11 05:30:59 +00:00
Arvid Norberg 0029ac62a8 add unit test for extract_peer_info 2015-05-10 18:24:38 +00:00
Arvid Norberg ca577796d3 fix test build 2015-05-10 05:25:31 +00:00
Arvid Norberg 0358badb82 remove test print 2015-05-10 05:12:24 +00:00
Arvid Norberg ca581f2258 rename dht::node_impl -> dht::node, since this hasn't been a pimpl for quite a while 2015-05-09 19:00:22 +00:00
Arvid Norberg 6557910c7f remove the DHT's last dependency on session_impl 2015-05-09 18:06:02 +00:00
Arvid Norberg 202b4921b6 merged changes from RC_1_0 2015-05-08 04:28:24 +00:00
Arvid Norberg 5dc00969f8 fix more warninigs 2015-05-06 02:13:03 +00:00
Arvid Norberg 4f216dece3 factor out strings of peer logs to be enums instead, in peer_log_alert 2015-05-03 02:53:54 +00:00
Arvid Norberg f0336017d1 fix gcc warnings and missing header files in makefiles 2015-04-26 00:51:44 +00:00
Arvid Norberg 821e34c795 fix examples build. fix print formatting bugs. fix some gcc warnings 2015-04-25 04:22:51 +00:00
Arvid Norberg f7e4f83469 separate out session_stats into its own header. silences warning and cleans up 2015-04-25 02:12:02 +00:00
Arvid Norberg 3bf9fa8fca move out merkle functions into their own file and test 2015-04-24 06:06:41 +00:00
Arvid Norberg 3ea67e2bf5 move time_now_string out to the unit test library (basically unused in libtorrent itself) 2015-04-24 03:48:08 +00:00
Arvid Norberg f5629eb403 cleanup and fixing of more warnings 2015-04-21 00:23:00 +00:00
Arvid Norberg 60d1b8fa7c fix gcc build 2015-04-18 21:21:22 +00:00
Arvid Norberg 1faf2e201f inversed TORRENT_LOGGING build config to enable logging by default. It's now disabled by TORRENT_DISABLE_LOGGING 2015-04-17 01:15:33 +00:00
Arvid Norberg a4d99188ba test_peer_list extension 2015-04-16 23:11:37 +00:00
Arvid Norberg 8200f33925 fix gcc build issue in test_peer_list 2015-04-13 00:50:55 +00:00
Arvid Norberg daacbbfbb4 extend test_peer_list 2015-04-12 22:29:41 +00:00
Arvid Norberg 208fbe8545 extend test_peer_list 2015-04-12 06:39:16 +00:00
Arvid Norberg b148f21314 fix typo in test 2015-04-12 02:54:43 +00:00
Arvid Norberg 8e6efd7fea fix 2015-04-12 00:39:07 +00:00