44import sys
55import uuid
66
7+ sys .path .insert (0 , os .path .abspath ('.' ))
78sys .path .insert (0 , os .path .abspath ('..' ))
89import CloudFlare
910
@@ -16,17 +17,30 @@ def test_cloudflare():
1617 cf = CloudFlare .CloudFlare ()
1718 assert isinstance (cf , CloudFlare .CloudFlare )
1819
19- def test_radar_datasets_ranking_top_200 ():
20- results = cf .radar .datasets ('ranking_top_200' )
21- assert len (results ) > 0
22- lines = results .splitlines ()
23- assert lines [0 ] == 'domain'
24- assert len (lines ) >= 200 + 1
20+ aliases = None
2521
26- def test_radar_datasets_ranking_top_1000 ():
27- results = cf .radar .datasets ('ranking_top_1000' )
22+ def test_radar_datasets_ranking ():
23+ # get the list of aliases - we only need to grab 12 values
24+ global aliases
25+ params = {'limit' :12 }
26+ results = cf .radar .datasets (params = params )
2827 assert len (results ) > 0
29- lines = results .splitlines ()
30- assert lines [0 ] == 'domain'
31- assert len (lines ) >= 1000 + 1
28+ assert 'datasets' in results
29+ aliases = []
30+ for v in results ['datasets' ]:
31+ aliases .append (
32+ (v ['id' ], v ['alias' ], v ['meta' ]['top' ])
33+ )
34+ aliases = sorted (aliases , key = lambda v : v [2 ], reverse = False )
35+
36+ def test_radar_datasets_ranking_three_aliases ():
37+ for v in aliases [0 :3 ]:
38+ alias = v [1 ]
39+ n_lines = v [2 ]
40+ results = cf .radar .datasets (alias )
41+ # produces CSV results
42+ assert len (results ) > 0
43+ lines = results .splitlines ()
44+ assert lines [0 ] == 'domain'
45+ assert len (lines ) >= n_lines + 1
3246
0 commit comments