Skip to content

Commit

Permalink
Add more test cases
Browse files Browse the repository at this point in the history
  • Loading branch information
hellais committed Apr 24, 2024
1 parent ff68c06 commit 58f41a2
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 1 deletion.
2 changes: 2 additions & 0 deletions oonipipeline/tests/_fixtures.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@
"20221101055235.141387_RU_webconnectivity_046ce024dd76b564", # ru_blocks_twitter
"20230907000740.785053_BR_httpinvalidrequestline_bdfe6d70dcbda5e9", # middlebox detected
"20221110235922.335062_IR_webconnectivity_e4114ee32b8dbf74", # Iran blocking reddit
"20240420235427.477327_US_webconnectivity_9b3cac038dc2ba22", # down site
"20240302000048.790188_RU_webconnectivity_e7ffd3bc0f525eb7", # connection reset RU
]

SAMPLE_POSTCANS = ["2024030100_AM_webconnectivity.n1.0.tar.gz"]
Expand Down
54 changes: 53 additions & 1 deletion oonipipeline/tests/test_analysis.py
Original file line number Diff line number Diff line change
Expand Up @@ -324,5 +324,57 @@ def test_website_experiment_results(measurements, netinfodb, fingerprintdb):
assert ok_dict["tcp"] == 0

blocked_dict = dict(zip(er[0].loni_blocked_keys, er[0].loni_blocked_values))
print(blocked_dict)
assert blocked_dict["tcp.timeout"] > 0.4


def test_website_web_analysis_down(measurements, netinfodb, fingerprintdb):
msmt = load_measurement(
msmt_path=measurements[
"20240420235427.477327_US_webconnectivity_9b3cac038dc2ba22"
]
)
er, web_analysis, web_obs, web_ctrl_obs = make_web_er_from_msmt(
msmt, fingerprintdb=fingerprintdb, netinfodb=netinfodb
)
assert len(web_analysis) == len(web_obs)
assert len(web_ctrl_obs) == 3

assert len(er) == 1
assert er[0].loni_ok_value < 0.2
ok_dict = dict(zip(er[0].loni_ok_keys, er[0].loni_ok_values))
assert ok_dict["tcp"] == 0

down_dict = dict(zip(er[0].loni_down_keys, er[0].loni_down_values))

blocked_dict = dict(zip(er[0].loni_blocked_keys, er[0].loni_blocked_values))

assert sum(down_dict.values()) > sum(blocked_dict.values())
assert down_dict["tcp.timeout"] > 0.5


def test_website_web_analysis_blocked_connect_reset(
measurements, netinfodb, fingerprintdb
):
msmt_path = measurements[
"20240302000048.790188_RU_webconnectivity_e7ffd3bc0f525eb7"
]
msmt = load_measurement(msmt_path=msmt_path)
er, web_analysis, web_obs, web_ctrl_obs = make_web_er_from_msmt(
msmt, fingerprintdb=fingerprintdb, netinfodb=netinfodb
)
# assert len(web_analysis) == len(web_obs)
assert len(web_ctrl_obs) == 4

assert len(er) == 1
# TODO(art): this should be changed
# assert er[0].loni_ok_value == 0
assert er[0].loni_ok_value < 0.2

ok_dict = dict(zip(er[0].loni_ok_keys, er[0].loni_ok_values))
assert ok_dict["tls"] == 0

down_dict = dict(zip(er[0].loni_down_keys, er[0].loni_down_values))
blocked_dict = dict(zip(er[0].loni_blocked_keys, er[0].loni_blocked_values))

assert sum(down_dict.values()) < sum(blocked_dict.values())
assert blocked_dict["tls.connection_reset"] > 0.5

0 comments on commit 58f41a2

Please sign in to comment.