From 299a54564859f5deb9b9822b9575563963aa48d6 Mon Sep 17 00:00:00 2001 From: arvidn Date: Thu, 10 May 2018 12:13:59 +0200 Subject: [PATCH] add test for suggests- and seed mode combined --- simulation/test_swarm.cpp | 23 ++++++++++++++++++++++- src/disk_io_thread.cpp | 2 -- src/peer_connection.cpp | 1 - 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/simulation/test_swarm.cpp b/simulation/test_swarm.cpp index 378061d29..8d85b6c38 100644 --- a/simulation/test_swarm.cpp +++ b/simulation/test_swarm.cpp @@ -58,6 +58,25 @@ TORRENT_TEST(seed_mode) { return true; }); } +TORRENT_TEST(seed_mode_suggest) +{ + setup_swarm(2, swarm_test::upload + // add session + , [](lt::settings_pack& pack) { + pack.set_int(settings_pack::suggest_mode, settings_pack::suggest_read_cache); + pack.set_int(settings_pack::cache_size, 2); + } + // add torrent + , [](lt::add_torrent_params& params) { + params.flags |= add_torrent_params::flag_seed_mode; + } + // on alert + , [](lt::alert const* a, lt::session& ses) {} + // terminate + , [](int ticks, lt::session& ses) -> bool + { return true; }); +} + TORRENT_TEST(plain) { setup_swarm(2, swarm_test::download @@ -129,6 +148,7 @@ TORRENT_TEST(suggest) // add session , [](lt::settings_pack& pack) { pack.set_int(settings_pack::suggest_mode, settings_pack::suggest_read_cache); + pack.set_int(settings_pack::cache_size, 2); } // add torrent , [](lt::add_torrent_params& params) {} @@ -311,10 +331,11 @@ TORRENT_TEST(stop_start_seed_graceful) #ifndef TORRENT_NO_DEPRECATE TORRENT_TEST(explicit_cache) { - setup_swarm(2, swarm_test::download + setup_swarm(4, swarm_test::download // add session , [](lt::settings_pack& pack) { pack.set_int(settings_pack::suggest_mode, settings_pack::suggest_read_cache); + pack.set_int(settings_pack::cache_size, 2); pack.set_bool(settings_pack::explicit_read_cache, true); pack.set_int(settings_pack::explicit_cache_interval, 5); } diff --git a/src/disk_io_thread.cpp b/src/disk_io_thread.cpp index a6189c26f..deb02a446 100644 --- a/src/disk_io_thread.cpp +++ b/src/disk_io_thread.cpp @@ -2685,8 +2685,6 @@ namespace libtorrent #if TORRENT_USE_ASSERTS pe->piece_log.push_back(piece_log_t(j->action)); #endif - TORRENT_PIECE_ASSERT(pe->cache_state <= cached_piece_entry::read_lru1 - || pe->cache_state == cached_piece_entry::read_lru2, pe); ++pe->piece_refcount; int block_size = m_disk_cache.block_size(); diff --git a/src/peer_connection.cpp b/src/peer_connection.cpp index 8d6601278..14961345e 100644 --- a/src/peer_connection.cpp +++ b/src/peer_connection.cpp @@ -3832,7 +3832,6 @@ namespace libtorrent } #endif - if (m_sent_suggested_pieces.empty()) { boost::shared_ptr t = m_torrent.lock();