Loading sbws/lib/v3bwfile.py +2 −2 Original line number Diff line number Diff line Loading @@ -1395,10 +1395,10 @@ class V3BWFile(object): ratio_stream_filtered = l.bw_filt / muf ratio = max(ratio_stream, ratio_stream_filtered) bw_scaled = ratio * min_bandwidth # Cap maximum bw bw_scaled = min(hlimit, bw_scaled) # round and convert to KB bw_new = kb_round_x_sig_dig(bw_scaled, digits=num_round_dig) # Cap maximum bw bw_new = min(hlimit, bw_new) # avoid 0 l.bw = max(bw_new, 1) return sorted(bw_lines_tf, key=lambda x: x.bw, reverse=reverse) Loading tests/unit/lib/test_v3bwfile.py +11 −9 Original line number Diff line number Diff line Loading @@ -330,25 +330,26 @@ def test_torflow_scale(mock_consensus, datadir, tmpdir, conf): state_fpath, scaling_method=TORFLOW_SCALING, round_digs=TORFLOW_ROUND_DIG) assert v3bwfile.bw_lines[0].bw == 123 assert v3bwfile.bw_lines[0].bw == 3 v3bwfile = V3BWFile.from_results(results, '', '', state_fpath, scaling_method=TORFLOW_SCALING, torflow_cap=0.0001, round_digs=TORFLOW_ROUND_DIG) assert v3bwfile.bw_lines[0].bw == 6.1423000000000005 # Wrong because it should be rounded after clipping assert v3bwfile.bw_lines[0].bw == 1 v3bwfile = V3BWFile.from_results(results, '', '', state_fpath, scaling_method=TORFLOW_SCALING, torflow_cap=1, round_digs=TORFLOW_ROUND_DIG) assert v3bwfile.bw_lines[0].bw == 123 assert v3bwfile.bw_lines[0].bw == 61 v3bwfile = V3BWFile.from_results(results, '', '', state_fpath, scaling_method=TORFLOW_SCALING, torflow_cap=1, round_digs=PROP276_ROUND_DIG) assert v3bwfile.bw_lines[0].bw == 120 assert v3bwfile.bw_lines[0].bw == 61 def test_torflow_scale_no_desc_bw_avg(datadir, conf, caplog): Loading @@ -356,7 +357,7 @@ def test_torflow_scale_no_desc_bw_avg(datadir, conf, caplog): results = load_result_file(str(datadir.join("results_no_desc_bw_avg.txt"))) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 520 assert v3bwfile.bw_lines[0].bw == 3 def test_torflow_scale_no_desc_bw_obs(datadir, conf, caplog): Loading @@ -364,7 +365,7 @@ def test_torflow_scale_no_desc_bw_obs(datadir, conf, caplog): results = load_result_file(str(datadir.join("results_no_desc_bw_obs.txt"))) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 600 assert v3bwfile.bw_lines[0].bw == 3 def test_torflow_scale_no_desc_bw_avg_obs(datadir, conf, caplog): Loading @@ -374,7 +375,7 @@ def test_torflow_scale_no_desc_bw_avg_obs(datadir, conf, caplog): ) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 600 assert v3bwfile.bw_lines[0].bw == 3 def test_torflow_scale_no_consensus_bw(datadir, conf, caplog): Loading @@ -384,7 +385,7 @@ def test_torflow_scale_no_consensus_bw(datadir, conf, caplog): ) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 520 assert v3bwfile.bw_lines[0].bw == 3 def test_torflow_scale_0_consensus_bw(datadir, conf, caplog): Loading @@ -392,7 +393,8 @@ def test_torflow_scale_0_consensus_bw(datadir, conf, caplog): results = load_result_file(str(datadir.join("results_0_consensus_bw.txt"))) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 520 assert v3bwfile.bw_lines[0].bw == 3 def test_results_away_each_other(datadir): min_num = 2 Loading Loading
sbws/lib/v3bwfile.py +2 −2 Original line number Diff line number Diff line Loading @@ -1395,10 +1395,10 @@ class V3BWFile(object): ratio_stream_filtered = l.bw_filt / muf ratio = max(ratio_stream, ratio_stream_filtered) bw_scaled = ratio * min_bandwidth # Cap maximum bw bw_scaled = min(hlimit, bw_scaled) # round and convert to KB bw_new = kb_round_x_sig_dig(bw_scaled, digits=num_round_dig) # Cap maximum bw bw_new = min(hlimit, bw_new) # avoid 0 l.bw = max(bw_new, 1) return sorted(bw_lines_tf, key=lambda x: x.bw, reverse=reverse) Loading
tests/unit/lib/test_v3bwfile.py +11 −9 Original line number Diff line number Diff line Loading @@ -330,25 +330,26 @@ def test_torflow_scale(mock_consensus, datadir, tmpdir, conf): state_fpath, scaling_method=TORFLOW_SCALING, round_digs=TORFLOW_ROUND_DIG) assert v3bwfile.bw_lines[0].bw == 123 assert v3bwfile.bw_lines[0].bw == 3 v3bwfile = V3BWFile.from_results(results, '', '', state_fpath, scaling_method=TORFLOW_SCALING, torflow_cap=0.0001, round_digs=TORFLOW_ROUND_DIG) assert v3bwfile.bw_lines[0].bw == 6.1423000000000005 # Wrong because it should be rounded after clipping assert v3bwfile.bw_lines[0].bw == 1 v3bwfile = V3BWFile.from_results(results, '', '', state_fpath, scaling_method=TORFLOW_SCALING, torflow_cap=1, round_digs=TORFLOW_ROUND_DIG) assert v3bwfile.bw_lines[0].bw == 123 assert v3bwfile.bw_lines[0].bw == 61 v3bwfile = V3BWFile.from_results(results, '', '', state_fpath, scaling_method=TORFLOW_SCALING, torflow_cap=1, round_digs=PROP276_ROUND_DIG) assert v3bwfile.bw_lines[0].bw == 120 assert v3bwfile.bw_lines[0].bw == 61 def test_torflow_scale_no_desc_bw_avg(datadir, conf, caplog): Loading @@ -356,7 +357,7 @@ def test_torflow_scale_no_desc_bw_avg(datadir, conf, caplog): results = load_result_file(str(datadir.join("results_no_desc_bw_avg.txt"))) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 520 assert v3bwfile.bw_lines[0].bw == 3 def test_torflow_scale_no_desc_bw_obs(datadir, conf, caplog): Loading @@ -364,7 +365,7 @@ def test_torflow_scale_no_desc_bw_obs(datadir, conf, caplog): results = load_result_file(str(datadir.join("results_no_desc_bw_obs.txt"))) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 600 assert v3bwfile.bw_lines[0].bw == 3 def test_torflow_scale_no_desc_bw_avg_obs(datadir, conf, caplog): Loading @@ -374,7 +375,7 @@ def test_torflow_scale_no_desc_bw_avg_obs(datadir, conf, caplog): ) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 600 assert v3bwfile.bw_lines[0].bw == 3 def test_torflow_scale_no_consensus_bw(datadir, conf, caplog): Loading @@ -384,7 +385,7 @@ def test_torflow_scale_no_consensus_bw(datadir, conf, caplog): ) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 520 assert v3bwfile.bw_lines[0].bw == 3 def test_torflow_scale_0_consensus_bw(datadir, conf, caplog): Loading @@ -392,7 +393,8 @@ def test_torflow_scale_0_consensus_bw(datadir, conf, caplog): results = load_result_file(str(datadir.join("results_0_consensus_bw.txt"))) caplog.set_level(logging.DEBUG) v3bwfile = V3BWFile.from_results(results, '', '', state_fpath) assert v3bwfile.bw_lines[0].bw == 520 assert v3bwfile.bw_lines[0].bw == 3 def test_results_away_each_other(datadir): min_num = 2 Loading