def test_notifies_user_about_removal(self): self.assertIsNone(self.inactive_membership.removal_notification_at) process_inactive_users() self.inactive_membership.refresh_from_db() self.assertIsNotNone(self.inactive_membership.removal_notification_at) self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].to, [self.inactive_user.email]) self.assertEqual(mail.outbox[0].subject, '{} is really missing you!'.format(self.group.name))
def test_removes_old_users(self): member = self.group.members.filter(pk=self.inactive_user.id) history = History.objects.filter( typus=HistoryTypus.GROUP_LEAVE_INACTIVE, users__in=[self.inactive_user], group=self.group) self.assertTrue(member.exists()) self.assertFalse(history.exists()) process_inactive_users() self.assertFalse(member.exists()) self.assertTrue(history.exists()) self.assertEqual(len(mail.outbox), 0)
def test_process_inactive_users_sends_email(self): process_inactive_users() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].to, [self.inactive_user.email]) self.assertEqual(mail.outbox[0].subject, '{} is missing you!'.format(self.group.name))
def test_process_inactive_users_flags_inactive_user(self): process_inactive_users() self.inactive_membership.refresh_from_db() self.assertNotEqual(self.inactive_membership.inactive_at, None)
def test_process_inactive_users_leaves_active_user_alone(self): process_inactive_users() self.active_membership.refresh_from_db() self.assertEqual(self.active_membership.inactive_at, None)
def test_dont_send_email_in_playground_group(self): process_inactive_users() self.assertEqual(len(mail.outbox), 0)