Beispiel #1
0
def top_ten(request):
    '''Return the 10 domains with the most hits this month. May return fewer than ten, because it won't return domains with zero hits.'''
    this_month_logs = MonthLog.objects.filter(month=first_of_the_month())
    popular_logs = this_month_logs.order_by('-access_count')[:10]
    domains = []
    # this is kind of terrible, but hey, it's only ten items
    for log in popular_logs:
        domains.append(log.domain)
    response = json_serializer.serialize(domains, ensure_ascii=False)
    return HttpResponse(response)
Beispiel #2
0
    def test(self):
        s = Shurl.objects.latest()
        d = Domain.get_or_create(s.url)
        m = d.monthlog_set.get(month=first_of_the_month())
        old_m = d.monthlog_set.get(month=datetime.date(2012, 3, 1))

        self.assertEqual(0, s.access_count)
        self.assertEqual(0, d.access_count)
        self.assertEqual(0, m.access_count)

        url = s.get_url()
        # re-pull
        s = Shurl.objects.latest()
        m = d.monthlog_set.get(month=first_of_the_month())
        d = m.domain

        self.assertEqual(url, s.url)
        self.assertEqual(1, s.access_count)
        self.assertEqual(1, m.access_count)
        self.assertEqual(1, d.access_count)
        self.assertEqual(0, old_m.access_count)
Beispiel #3
0
    def setUp(self):
        d = Domain(domain="http://www.test.com")
        d.save()
        s = Shurl(url="http://www.test.com", domain=d)
        s.save()
        s.assign_short_suffix()

        m = MonthLog(domain=d)
        m.save()

        past_time = datetime.date(2012, 3, 14)
        old_m = MonthLog(domain=d, creation_date=past_time, month=first_of_the_month(past_time))
        old_m.save()