Example #1
0
 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]
     )
Example #2
0
 def test_add_and_delete_blog(self):
     blog1 = Blog(title="blog1")
     blog1.save()
     self.assertEqual(Blog.objects.count(), 1)
     blog2 = Blog(title="blog2")
     self.assertEqual(blog2.pk, None)
     blog2.save()
     self.assertNotEqual(blog2.pk, None)
     self.assertEqual(Blog.objects.count(), 2)
     blog2.delete()
     self.assertEqual(Blog.objects.count(), 1)
     blog1.delete()
     self.assertEqual(Blog.objects.count(), 0)
Example #3
0
    def test_simple_filter(self):
        blog1 = Blog(title="same title")
        blog1.save()
        blog2 = Blog(title="same title")
        blog2.save()
        blog3 = Blog(title="another title")
        blog3.save()
        self.assertEqual(Blog.objects.count(), 3)
        blog4 = Blog.objects.get(pk=blog1.pk)
        self.assertEqual(blog4, blog1)
        self.assertEqual(
            Blog.objects.filter(title="same title").count(),
            2
        )
        self.assertEqual(
            Blog.objects.filter(title="same title", pk=blog1.pk).count(),
            1
        )
        self.assertEqual(
            Blog.objects.filter(title__startswith="same").count(),
            2
        )
        self.assertEqual(
            Blog.objects.filter(title__istartswith="SAME").count(),
            2
        )
        self.assertEqual(
            Blog.objects.filter(title__endswith="title").count(),
            3
        )
        self.assertEqual(
            Blog.objects.filter(title__iendswith="Title").count(),
            3
        )
        self.assertEqual(
            Blog.objects.filter(title__icontains="same").count(),
            2
        )
        self.assertEqual(
            Blog.objects.filter(title__contains="same").count(),
            2
        )
        self.assertEqual(
            Blog.objects.filter(title__iexact="same Title").count(),
            2
        )

        self.assertEqual(
            Blog.objects.filter(title__regex="s.me.*").count(),
            2
        )
        self.assertEqual(
            Blog.objects.filter(title__iregex="S.me.*").count(),
            2
        )
Example #4
0
 def test_simple_get(self):
     blog1 = Blog(title="blog1")
     blog1.save()
     blog2 = Blog(title="blog2")
     blog2.save()
     self.assertEqual(Blog.objects.count(), 2)
     self.assertEqual(Blog.objects.get(title="blog2"), blog2)
     self.assertEqual(Blog.objects.get(title="blog1"), blog1)
Example #5
0
 def test_change_model(self):
     blog1 = Blog(title="blog 1")
     blog1.save()
     self.assertEqual(Blog.objects.count(), 1)
     blog1.title = "new title"
     blog1.save()
     self.assertEqual(Blog.objects.count(), 1)
     bl = Blog.objects.all()[0]
     self.assertEqual(blog1.title, bl.title)
     bl.delete()
Example #6
0
    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]
        )
Example #7
0
    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_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_standard_autofield(self):
#
#        sam1 = StandardAutoFieldModel(title="title 1")
#        sam1.save()
#        sam2 = StandardAutoFieldModel(title="title 2")
#        sam2.save()
#
#        self.assertEqual(
#            StandardAutoFieldModel.objects.count(),
#            2
#        )
#
#        sam1_query = StandardAutoFieldModel.objects.get(title="title 1")
#        self.assertEqual(
#            sam1_query.pk,
#            sam1.pk
#        )
#
#        sam1_query = StandardAutoFieldModel.objects.get(pk=sam1.pk)
#        
        
Example #8
0
 def test_change_model(self):
     blog1 = Blog(title="blog 1")
     blog1.save()
     self.assertEqual(Blog.objects.count(), 1)
     blog1.title = "new title"
     blog1.save()
     self.assertEqual(Blog.objects.count(), 1)
     self.assertEqual(blog1.title, Blog.objects.all()[0].title)
Example #9
0
 def test_simple_get(self):
     blog1 = Blog(title="blog1")
     blog1.save()
     blog2 = Blog(title="blog2")
     blog2.save()
     self.assertEqual(Blog.objects.count(), 2)
     self.assertEqual(
         Blog.objects.get(title="blog2"),
         blog2
     )
     self.assertEqual(
         Blog.objects.get(title="blog1"),
         blog1
     )
Example #10
0
    def test_update(self):
        blog1 = Blog(title="Blog")
        blog1.save()
        blog2 = Blog(title="Blog 2")
        blog2.save()
        entry1 = Entry(title="entry 1", blog=blog1)
        entry1.save()

        Entry.objects.filter(pk=entry1.pk).update(blog=blog2)

        self.assertEqual(
            # this should work too
            list(Entry.objects.filter(blog=blog2)),
            [entry1]
        )


        Entry.objects.filter(blog=blog2).update(title="Title has been updated")

        self.assertEqual(
            # this should work too
            Entry.objects.filter()[0].title,
            "Title has been updated"
        )

        Entry.objects.filter(blog=blog2).update(title="Last Update Test", blog=blog1)

        self.assertEqual(
            # this should work too
            Entry.objects.filter()[0].title,
            "Last Update Test"
        )

        self.assertEqual(
            # this should work too
            Entry.objects.filter(blog=blog1).count(),
            1
        )
Example #11
0
    def test_simple_filter(self):
        blog1 = Blog(title="same title")
        blog1.save()
        blog2 = Blog(title="same title")
        blog2.save()
        blog3 = Blog(title="another title")
        blog3.save()
        self.assertEqual(Blog.objects.count(), 3)
        blog4 = Blog.objects.get(pk=blog1.pk)
        self.assertEqual(blog4, blog1)
        self.assertEqual(Blog.objects.filter(title="same title").count(), 2)
        self.assertEqual(
            Blog.objects.filter(title="same title", pk=blog1.pk).count(), 1)
        self.assertEqual(
            Blog.objects.filter(title__startswith="same").count(), 2)
        self.assertEqual(
            Blog.objects.filter(title__istartswith="SAME").count(), 2)
        self.assertEqual(
            Blog.objects.filter(title__endswith="title").count(), 3)
        self.assertEqual(
            Blog.objects.filter(title__iendswith="Title").count(), 3)
        self.assertEqual(
            Blog.objects.filter(title__icontains="same").count(), 2)
        self.assertEqual(
            Blog.objects.filter(title__contains="same").count(), 2)
        self.assertEqual(
            Blog.objects.filter(title__iexact="same Title").count(), 2)

        self.assertEqual(Blog.objects.filter(title__regex="s.me.*").count(), 2)
        self.assertEqual(
            Blog.objects.filter(title__iregex="S.me.*").count(), 2)