Exemplo n.º 1
0
    def test_save(self):
        post = {'form0-field1': 1, 'form1-field1': 2}
        form = ModelFormSet(post, form_class=ModelForm, repeat=2)
        objs = form.save()

        self.assertEquals(len(objs), 2)
        ### TODO: test rollback
Exemplo n.º 2
0
    def test_init_instances(self):
        model = Model.objects.create(field1=4)

        post = {'form0-field1': 1}
        form = ModelFormSet(post, form_class=ModelForm, repeat=1, instances=[model])
        form.save()

        self.assertEquals(Model.objects.count(), 1)
Exemplo n.º 3
0
    def test_init(self):
        ## Form class must be modelform
        self.assertRaises(ValueError, lambda: ModelFormSet(form_class=Form1, repeat=2))

        post = {'form0-field1': 1, 'form1-field1': 2}
        form = ModelFormSet(post, form_class=ModelForm, repeat=2)
        form.save()
        self.assertEquals(Model.objects.count(), 2)
Exemplo n.º 4
0
    def test_empty_forms(self):
        post = {'form0-field1': 7}
        form = ModelFormSet(post, form_class=ModelForm, repeat=5, min_valid=1, instances=Model.objects.all())

        self.assertTrue(form.is_valid())
        form.save()

        self.assertEquals(Model.objects.count(), 1)
Exemplo n.º 5
0
    def test_init_queryset(self):
        post = {}
        for i in range(0, 5):
            _ = Model.objects.create(field1=i)
            post['form{0}-field1'.format(i)] = 0

        s = Model.objects.all().aggregate(Sum('field1'))['field1__sum']
        self.assertEquals(s, 10)

        form = ModelFormSet(post, form_class=ModelForm, repeat=5, instances=Model.objects.all())
        form.save()

        s = Model.objects.all().aggregate(Sum('field1'))['field1__sum']
        self.assertEquals(s, 0)