def process_domain(registered_domain, updated_domains, now=None): """Update the statistics for all fuzz results for this domain.""" if now is None: now = datetime.datetime.now() updated_domains = set(updated_domains) delta_report = repository.get_delta_report(registered_domain) if delta_report is None: return updated_domains for domain in delta_reports.extract_domains(delta_report): if domain in updated_domains: continue updated = statistics_repository.noise_stat_last_updated(domain) if updated is not None and (now - updated) < FREQUENCY: continue stat = statistics_repository.get_noise_stat(domain) if stat is None: stat = NoiseStatistic(domain, deltas=1) else: stat.increment() stat.update_window() statistics_repository.set_noise_stat(stat) statistics_repository.mark_noise_stat_as_updated(domain) updated_domains.add(domain) return updated_domains
def test_increment(): """Test the incrementing of a stats payload.""" domain = 'www.example.com' stat = NoiseStatistic(domain) for _ in range(10): stat.increment() assert stat.deltas == 10
def process_domain(registered_domain, now=None): """Update the statistics for all fuzz results for this domain.""" if now is None: now = datetime.datetime.now() delta_report = repository.get_delta_report(registered_domain) if delta_report is None: return for domain in delta_reports.extract_domains(delta_report): updated = statistics_repository.noise_stat_last_updated(domain) if updated is not None and (now - updated) < FREQUENCY: continue stat = statistics_repository.get_noise_stat(domain) if stat is None: stat = NoiseStatistic(domain, deltas=1) else: stat.increment() stat.update_window() statistics_repository.set_noise_stat(stat) statistics_repository.mark_noise_stat_as_updated(domain)