equal
deleted
inserted
replaced
51 """ |
51 """ |
52 keys_to_test = ['domain_name', 'expiration_date', 'updated_date', |
52 keys_to_test = ['domain_name', 'expiration_date', 'updated_date', |
53 'creation_date', 'status'] |
53 'creation_date', 'status'] |
54 fail = 0 |
54 fail = 0 |
55 total = 0 |
55 total = 0 |
56 for path in glob('test/samples/whois/*.com'): |
56 whois_path = os.path.join(os.path.dirname(os.path.abspath(__file__)),'samples','whois','*') |
|
57 expect_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'samples','expected') |
|
58 for path in glob(whois_path): |
57 # Parse whois data |
59 # Parse whois data |
58 domain = os.path.basename(path) |
60 domain = os.path.basename(path) |
59 with open(path) as whois_fp: |
61 with open(path) as whois_fp: |
60 data = whois_fp.read() |
62 data = whois_fp.read() |
61 |
63 |
70 def date2str4json(obj): |
72 def date2str4json(obj): |
71 if isinstance(obj, datetime.datetime): |
73 if isinstance(obj, datetime.datetime): |
72 return str(obj) |
74 return str(obj) |
73 raise TypeError( |
75 raise TypeError( |
74 '{} is not JSON serializable'.format(repr(obj))) |
76 '{} is not JSON serializable'.format(repr(obj))) |
75 outfile_name = os.path.join('test/samples/expected/', domain) |
77 outfile_name = os.path.join(expect_path, domain) |
76 with open(outfile_name, 'w') as outfil: |
78 with open(outfile_name, 'w') as outfil: |
77 expected_results = json.dump(results, outfil, |
79 expected_results = json.dump(results, outfil, |
78 default=date2str4json) |
80 default=date2str4json) |
79 continue |
81 continue |
80 |
82 |
81 # Load expected result |
83 # Load expected result |
82 with open(os.path.join('test/samples/expected/', domain)) as infil: |
84 with open(os.path.join(expect_path, domain)) as infil: |
83 expected_results = json.load(infil) |
85 expected_results = json.load(infil) |
84 |
86 |
85 # Compare each key |
87 # Compare each key |
86 for key in results: |
88 for key in results: |
87 total += 1 |
89 total += 1 |