add missing min_memory_usage() and high_performance_seed() settings presets to python
This commit is contained in:
parent
605227d9da
commit
62db98ca09
|
@ -1,3 +1,4 @@
|
|||
* add missing min_memory_usage() and high_performance_seed() settings presets to python
|
||||
* fix stat cache issue that sometimes would produce incorrect resume data
|
||||
* storage optimization to peer classes
|
||||
* fix torrent name in alerts of builds with deprecated functions
|
||||
|
|
|
@ -140,6 +140,29 @@ namespace
|
|||
}
|
||||
}
|
||||
|
||||
dict make_dict(lt::settings_pack const& sett)
|
||||
{
|
||||
dict ret;
|
||||
for (int i = settings_pack::string_type_base;
|
||||
i < settings_pack::max_string_setting_internal; ++i)
|
||||
{
|
||||
ret[name_for_setting(i)] = sett.get_str(i);
|
||||
}
|
||||
|
||||
for (int i = settings_pack::int_type_base;
|
||||
i < settings_pack::max_int_setting_internal; ++i)
|
||||
{
|
||||
ret[name_for_setting(i)] = sett.get_int(i);
|
||||
}
|
||||
|
||||
for (int i = settings_pack::bool_type_base;
|
||||
i < settings_pack::max_bool_setting_internal; ++i)
|
||||
{
|
||||
ret[name_for_setting(i)] = sett.get_bool(i);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
boost::shared_ptr<lt::session> make_session(boost::python::dict sett, int flags)
|
||||
{
|
||||
settings_pack p;
|
||||
|
@ -181,25 +204,21 @@ namespace
|
|||
allow_threading_guard guard;
|
||||
sett = ses.get_settings();
|
||||
}
|
||||
dict ret;
|
||||
for (int i = settings_pack::string_type_base;
|
||||
i < settings_pack::max_string_setting_internal; ++i)
|
||||
{
|
||||
ret[name_for_setting(i)] = sett.get_str(i);
|
||||
return make_dict(sett);
|
||||
}
|
||||
|
||||
for (int i = settings_pack::int_type_base;
|
||||
i < settings_pack::max_int_setting_internal; ++i)
|
||||
dict min_memory_usage_wrapper()
|
||||
{
|
||||
ret[name_for_setting(i)] = sett.get_int(i);
|
||||
settings_pack ret;
|
||||
min_memory_usage(ret);
|
||||
return make_dict(ret);
|
||||
}
|
||||
|
||||
for (int i = settings_pack::bool_type_base;
|
||||
i < settings_pack::max_bool_setting_internal; ++i)
|
||||
dict high_performance_seed_wrapper()
|
||||
{
|
||||
ret[name_for_setting(i)] = sett.get_bool(i);
|
||||
}
|
||||
return ret;
|
||||
settings_pack ret;
|
||||
high_performance_seed(ret);
|
||||
return make_dict(ret);
|
||||
}
|
||||
|
||||
#ifndef BOOST_NO_EXCEPTIONS
|
||||
|
@ -962,11 +981,8 @@ void bind_session()
|
|||
scope().attr("create_metadata_plugin") = "metadata_transfer";
|
||||
#endif
|
||||
|
||||
typedef void (*mem_preset2)(settings_pack& s);
|
||||
typedef void (*perf_preset2)(settings_pack& s);
|
||||
|
||||
def("high_performance_seed", (perf_preset2)high_performance_seed);
|
||||
def("min_memory_usage", (mem_preset2)min_memory_usage);
|
||||
def("high_performance_seed", high_performance_seed_wrapper);
|
||||
def("min_memory_usage", min_memory_usage_wrapper);
|
||||
|
||||
class_<stats_metric>("stats_metric")
|
||||
.def_readonly("name", &stats_metric::name)
|
||||
|
|
|
@ -252,6 +252,20 @@ class test_session(unittest.TestCase):
|
|||
self.assertEqual(s.get_settings()['num_want'], 66)
|
||||
self.assertEqual(s.get_settings()['user_agent'], 'test123')
|
||||
|
||||
def test_min_memory_preset(self):
|
||||
min_mem = lt.min_memory_usage()
|
||||
print(min_mem)
|
||||
|
||||
self.assertTrue('connection_speed' in min_mem)
|
||||
self.assertTrue('file_pool_size' in min_mem)
|
||||
|
||||
def test_seed_mode_preset(self):
|
||||
seed_mode = lt.high_performance_seed()
|
||||
print(seed_mode)
|
||||
|
||||
self.assertTrue('alert_queue_size' in seed_mode)
|
||||
self.assertTrue('connection_speed' in seed_mode)
|
||||
self.assertTrue('file_pool_size' in seed_mode)
|
||||
|
||||
if __name__ == '__main__':
|
||||
print(lt.__version__)
|
||||
|
|
Loading…
Reference in New Issue