Ejemplo n.º 1
0
    def test_already_invited(self):
        """Ensure form is not valid if invite has already been sent"""
        from_user = User.objects.create(username="******")
        to_user = User.objects.create(username="******", email="*****@*****.**")
        InvitationStat.add_invites(2)
        istat = from_user.invitationstat
        istat.refresh_from_db()

        # Create an existing invitation
        JoinInvitation.invite(from_user, to_user.email, send=False)

        # Attempt to invite same user again
        form_data = {
            "email_address": to_user.email
        }
        form = InviteForm(user=from_user, data=form_data)
        self.assertFalse(form.is_valid())
Ejemplo n.º 2
0
 def invite_user(self, from_user, to_email, role, message=None):
     if not JoinInvitation.objects.filter(signup_code__email=to_email).exists():
         invite = JoinInvitation.invite(from_user, to_email, message, send=False)
         membership, _ = self.memberships.get_or_create(
             invite=invite,
             defaults={"role": role, "state": Membership.STATE_INVITED}
         )
         invite.send_invite()
         signals.invited_user.send(sender=self, membership=membership)
         return membership
Ejemplo n.º 3
0
 def invite_user(self, from_user, to_email, role, message=None):
     if not JoinInvitation.objects.filter(signup_code__email=to_email).exists():
         invite = JoinInvitation.invite(from_user, to_email, message, send=False)
         membership, _ = self.memberships.get_or_create(
             invite=invite,
             defaults={"role": role, "state": BaseMembership.STATE_INVITED}
         )
         invite.send_invite()
         signals.invited_user.send(sender=self, membership=membership, by=from_user)
         return membership
Ejemplo n.º 4
0
 def test_process_independent_joins(self):
     JoinInvitation.process_independent_joins(self.to_user, "*****@*****.**")
     invite = JoinInvitation.objects.get(pk=self.invitation.pk)
     self.assertEqual(invite.status,
                      JoinInvitation.STATUS_JOINED_INDEPENDENTLY)
Ejemplo n.º 5
0
 def test_process_independent_joins(self):
     JoinInvitation.process_independent_joins(self.to_user, "*****@*****.**")
     invite = JoinInvitation.objects.get(pk=self.invitation.pk)
     self.assertEqual(invite.status, JoinInvitation.STATUS_JOINED_INDEPENDENTLY)