def METHOD_NAME(self) -> None:
    # Arrange
    term_key = TermEnum.MAY_CONTACT
    term_option_type = TermOptionChoices.AGREE
    person = Person.objects.create(
        personal="Harry", family="Potter", email="hp@magic.uk"
    )
    old_consent = Consent.objects.get(
        term__slug=Term.key_to_slug(term_key), person=person
    )
    # Act
    new_consent = reconsent_for_term_option_type(
        term_key,
        term_option_type,
        person,
    )
    # Assert
    self.assertNotEqual(old_consent.pk, new_consent.pk)
    self.assertEqual(old_consent.term, new_consent.term)
    self.assertIsNone(old_consent.term_option)
    # New consent term option is actually a value from database, whereas the old
    # consent was never set to anything but None (the default value).
    self.assertNotEqual(old_consent.term_option, new_consent.term_option)
    self.assertEqual(old_consent.person, new_consent.person)