def test_foreign_keys_bug(self): blog1 = Blog(title="Blog") blog1.save() entry1 = Entry(title="entry 1", blog=blog1) entry1.save() self.assertEqual( # this should work too list(Entry.objects.filter(blog=blog1)), [entry1] )
def test_dates_less_and_more_than(self): now = datetime.datetime.now() before = now + datetime.timedelta(days=1) after = now - datetime.timedelta(days=1) entry1 = Entry(title="entry 1", date_published=now) entry1.save() entry2 = Entry(title="entry 2", date_published=before) entry2.save() entry3 = Entry(title="entry 3", date_published=after) entry3.save() a = list(Entry.objects.filter(date_published=now)) self.assertEqual( list(Entry.objects.filter(date_published=now)), [entry1] ) self.assertEqual( list(Entry.objects.filter(date_published__lt=now)), [entry3] ) self.assertEqual( list(Entry.objects.filter(date_published__gt=now)), [entry2] )
def test_simple_foreign_keys(self): now = datetime.datetime.now() blog1 = Blog(title="Blog") blog1.save() entry1 = Entry(title="entry 1", blog=blog1) entry1.save() entry2 = Entry(title="entry 2", blog=blog1) entry2.save() self.assertEqual(Entry.objects.count(), 2) for entry in Entry.objects.all(): self.assertEqual( blog1, entry.blog ) blog2 = Blog(title="Blog") blog2.save() entry3 = Entry(title="entry 3", blog=blog2) entry3.save() self.assertEqual( # it's' necessary to explicitly state the pk here list(Entry.objects.filter(blog=blog1.pk)), [entry1, entry2] )
def test_dates_ordering(self): now = datetime.datetime.now() before = now - datetime.timedelta(days=1) entry1 = Entry(title="entry 1", date_published=now) entry1.save() entry2 = Entry(title="entry 2", date_published=before) entry2.save() self.assertEqual( list(Entry.objects.order_by('-date_published')), [entry1, entry2] ) self.assertEqual( list(Entry.objects.order_by('date_published')), [entry2, entry1] )