def test_multiple_subtopics_with_multiple_users_are_pseudonymized(self):
    self.save_new_subtopic(self.SUBTOP_2_ID, self.user_2_id, self.TOP_1_ID)
    wipeout_service.delete_user(wipeout_service.get_pending_deletion_request(self.user_1_id))
    subtopic_mappings_1 = user_models.PendingDeletionRequestModel.get_by_id(self.user_1_id).pseudonymizable_entity_mappings[models.NAMES.subtopic]
    metadata_model = subtopic_models.SubtopicPageSnapshotMetadataModel.get_by_id(('%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_1_ID)))
    self.assertEqual(metadata_model.committer_id, subtopic_mappings_1[('%s-%s' % (self.TOP_1_ID, self.SUBTOP_1_ID))])
    commit_log_model = subtopic_models.SubtopicPageCommitLogEntryModel.get_by_id(('subtopicpage-%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_1_ID)))
    self.assertEqual(commit_log_model.user_id, subtopic_mappings_1[('%s-%s' % (self.TOP_1_ID, self.SUBTOP_1_ID))])
    metadata_model = subtopic_models.SubtopicPageSnapshotMetadataModel.get_by_id(('%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_2_ID)))
    self.assertEqual(metadata_model.committer_id, self.user_2_id)
    commit_log_model = subtopic_models.SubtopicPageCommitLogEntryModel.get_by_id(('subtopicpage-%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_2_ID)))
    self.assertEqual(commit_log_model.user_id, self.user_2_id)
    wipeout_service.delete_user(wipeout_service.get_pending_deletion_request(self.user_2_id))
    subtopic_mappings_2 = user_models.PendingDeletionRequestModel.get_by_id(self.user_2_id).pseudonymizable_entity_mappings[models.NAMES.subtopic]
    metadata_model = subtopic_models.SubtopicPageSnapshotMetadataModel.get_by_id(('%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_2_ID)))
    self.assertEqual(metadata_model.committer_id, subtopic_mappings_2[('%s-%s' % (self.TOP_1_ID, self.SUBTOP_2_ID))])
    commit_log_model = subtopic_models.SubtopicPageCommitLogEntryModel.get_by_id(('subtopicpage-%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_2_ID)))
    self.assertEqual(commit_log_model.user_id, subtopic_mappings_2[('%s-%s' % (self.TOP_1_ID, self.SUBTOP_2_ID))])
def test_multiple_subtopics_with_multiple_users_are_pseudonymized(self):
    self.save_new_subtopic(self.SUBTOP_2_ID, self.user_2_id, self.TOP_1_ID)
    wipeout_service.delete_user(wipeout_service.get_pending_deletion_request(self.user_1_id))
    subtopic_mappings_1 = user_models.PendingDeletionRequestModel.get_by_id(self.user_1_id).pseudonymizable_entity_mappings[models.NAMES.subtopic]
    metadata_model = subtopic_models.SubtopicPageSnapshotMetadataModel.get_by_id(('%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_1_ID)))
    self.assertEqual(metadata_model.committer_id, subtopic_mappings_1[('%s-%s' % (self.TOP_1_ID, self.SUBTOP_1_ID))])
    commit_log_model = subtopic_models.SubtopicPageCommitLogEntryModel.get_by_id(('subtopicpage-%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_1_ID)))
    self.assertEqual(commit_log_model.user_id, subtopic_mappings_1[('%s-%s' % (self.TOP_1_ID, self.SUBTOP_1_ID))])
    metadata_model = subtopic_models.SubtopicPageSnapshotMetadataModel.get_by_id(('%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_2_ID)))
    self.assertEqual(metadata_model.committer_id, self.user_2_id)
    commit_log_model = subtopic_models.SubtopicPageCommitLogEntryModel.get_by_id(('subtopicpage-%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_2_ID)))
    self.assertEqual(commit_log_model.user_id, self.user_2_id)
    wipeout_service.delete_user(wipeout_service.get_pending_deletion_request(self.user_2_id))
    subtopic_mappings_2 = user_models.PendingDeletionRequestModel.get_by_id(self.user_2_id).pseudonymizable_entity_mappings[models.NAMES.subtopic]
    metadata_model = subtopic_models.SubtopicPageSnapshotMetadataModel.get_by_id(('%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_2_ID)))
    self.assertEqual(metadata_model.committer_id, subtopic_mappings_2[('%s-%s' % (self.TOP_1_ID, self.SUBTOP_2_ID))])
    commit_log_model = subtopic_models.SubtopicPageCommitLogEntryModel.get_by_id(('subtopicpage-%s-%s-1' % (self.TOP_1_ID, self.SUBTOP_2_ID)))
    self.assertEqual(commit_log_model.user_id, subtopic_mappings_2[('%s-%s' % (self.TOP_1_ID, self.SUBTOP_2_ID))])