def test_prevent_user_became_editor_when_joining_playground(self):
        user1 = UserFactory()
        group = PlaygroundGroupFactory(newcomers=[user1])
        Notification.objects.all().delete()

        user = UserFactory()
        group.add_member(user)

        self.assertEqual(Notification.objects.count(), 1)
        you_became_editor = Notification.objects.get(
            type=NotificationType.YOU_BECAME_EDITOR.value)
        self.assertEqual(you_became_editor.user, user)
class TestGroupPlaygroundReceivers(TestCase):
    def setUp(self):
        self.group = PlaygroundGroupFactory()

    def test_playground_members_are_always_editors(self):
        new_member = UserFactory()
        mail.outbox = []

        self.group.add_member(new_member)

        self.assertTrue(self.group.is_editor(new_member))
        # no email should be sent when joining playground
        self.assertEqual(len(mail.outbox), 0)

        # no email should be sent when giving trust
        membership = GroupMembership.objects.get(group=self.group,
                                                 user=new_member)
        another_user = UserFactory()
        self.group.add_member(another_user)
        mail.outbox = []
        Trust.objects.create(membership=membership, given_by=another_user)

        self.assertEqual(len(mail.outbox), 0)