def sets_up_deferred_saving_if_commit_is_False (self):
        voice = Voice(self.me)
        voice.revise(self.opinion, statement='blah1', position='support', commit=False)

        num_revisions = len(self.opinion.revisions.all())
        assert_equal(num_revisions, 1)
        assert hasattr(voice, 'save_revision')
    def should_add_a_revision_with_the_given_properties (self):
        voice = Voice(self.me)
        voice.revise(self.opinion, statement='blah2')

        revision = StatementRevision.objects.order_by('-datetime')[0]
        assert_equal(revision.statement, 'blah2')
        assert_equal(revision.position, 'oppose')

        voice.revise(self.opinion, position='support')

        revision = StatementRevision.objects.order_by('-datetime')[0]
        assert_equal(revision.statement, 'blah2')
        assert_equal(revision.position, 'support')

        voice.revise(self.opinion, statement='blah3', position='abstain')

        revision = StatementRevision.objects.order_by('-datetime')[0]
        assert_equal(revision.statement, 'blah3')
        assert_equal(revision.position, 'abstain')