def assert_meaning_changes(self, removed=(), added=()): actual_removed, actual_added = self.get_meaning_changes() assert (not setify(removed).symmetric_difference(setify(actual_removed)) and not setify(added).symmetric_difference(setify(actual_added))), ( 'Expected:\nremoved=%r,\nadded=%r\nGot:\nremoved=%r,\nadded=%r' % ( listify(removed), listify(added), listify(actual_removed), listify(actual_added)))
def get_meaning_changes(self): new_meanings = dump_meanings() try: old_meanings = self.previous_meanings_dump except AttributeError: actual_removed = () actual_added = new_meanings else: actual_removed = setify(old_meanings).difference( setify(new_meanings)) actual_added = setify(new_meanings).difference( setify(old_meanings)) self.previous_meanings_dump = new_meanings return actual_removed, actual_added