def test_ok02(self):
        "Several actions"
        with self.assertNumQueries(0):
            field = BatchActionsField()
            field.model = FakeContact

        actions = field.clean(
            json_dump([
                {
                    'name': 'first_name',
                    'operator': 'prefix',
                    'value': 'My '
                },
                {
                    'name': 'last_name',
                    'operator': 'upper',
                    'value': ''
                },
            ]))
        self.assertEqual(2, len(actions))

        contact = FakeContact(first_name='Faye', last_name='Valentine')
        for action in actions:
            action(contact)

        self.assertEqual('My Faye', contact.first_name)
        self.assertEqual('VALENTINE', contact.last_name)
Exemplo n.º 2
0
    def test_ok01(self):
        with self.assertNumQueries(0):
            field = BatchActionsField(model=FakeContact)

        actions = field.clean(self.build_data(name='description',
                                              operator='upper',
                                              value='',
                                             )
                             )
        self.assertEqual(1, len(actions))

        contact = FakeContact(first_name='faye', last_name='Valentine', description='yarglaaaaaaaaaaa')
        actions[0](contact)
        self.assertEqual('YARGLAAAAAAAAAAA', contact.description)