示例#1
0
class TestTransferDomainModel(BaseDomainTest):
    def setUp(self):
        super(TestTransferDomainModel, self).setUp()

        self.transfer = TransferDomainRequest(to_username=self.mugglename,
                                              from_username=self.username,
                                              domain=self.domain.name)
        self.transfer.save()

    def tearDown(self):
        super(TestTransferDomainModel, self).tearDown()

        self.transfer.delete()

    def test_domain_transfer_inactive(self):
        self.transfer.active = False
        self.transfer.save()

        with self.assertRaises(InactiveTransferDomainException):
            self.transfer.transfer_domain()

        with self.assertRaises(InactiveTransferDomainException):
            self.transfer.send_transfer_request()

    def test_domain_transfer(self):
        self.transfer.transfer_domain()

        self.assertFalse(self.transfer.active)
        self.assertFalse(self.transfer.from_user.is_member_of(self.domain))
        self.assertTrue(self.transfer.to_user.is_member_of(self.domain))

    def test_send_transfer_request(self):
        with patch('corehq.apps.hqwebapp.tasks.send_HTML_email'
                   ) as patched_send_HTML_email:
            self.transfer.send_transfer_request()

            self.assertIsNotNone(self.transfer.transfer_guid)
            self.assertEqual(
                patched_send_HTML_email.call_count, 2,
                "Should send an email to both requester and requestee")

    def test_get_active_transfer(self):
        res = TransferDomainRequest.get_active_transfer(
            self.domain, self.user.username)
        self.assertIsNotNone(res)

        newer = TransferDomainRequest(to_username=self.mugglename,
                                      from_username=self.username,
                                      request_time=datetime.utcnow(),
                                      domain=self.domain.name)
        newer.save()

        res = TransferDomainRequest.get_active_transfer(
            self.domain, self.user.username)
        self.assertEqual(res.pk, newer.pk)
        self.assertFalse(
            TransferDomainRequest.objects.get(pk=self.transfer.pk).active)
class TestTransferDomainModel(BaseDomainTest):

    def setUp(self):
        super(TestTransferDomainModel, self).setUp()

        self.transfer = TransferDomainRequest(
            to_username=self.mugglename,
            from_username=self.username,
            domain=self.domain.name)
        self.transfer.save()

    def tearDown(self):
        super(TestTransferDomainModel, self).tearDown()

        self.transfer.delete()

    def test_domain_transfer_inactive(self):
        self.transfer.active = False
        self.transfer.save()

        with self.assertRaises(InactiveTransferDomainException):
            self.transfer.transfer_domain()

        with self.assertRaises(InactiveTransferDomainException):
            self.transfer.send_transfer_request()

    def test_domain_transfer(self):
        self.transfer.transfer_domain()

        self.assertFalse(self.transfer.active)
        self.assertFalse(self.transfer.from_user.is_member_of(self.domain))
        self.assertTrue(self.transfer.to_user.is_member_of(self.domain))

    def test_send_transfer_request(self):
        self.transfer.send_transfer_request()

        self.assertIsNotNone(self.transfer.transfer_guid)
        self.assertEqual(len(mail.outbox), 2,
                         "Should send an email to both requester and requestee")

    def test_get_active_transfer(self):
        res = TransferDomainRequest.get_active_transfer(self.domain, self.user.username)
        self.assertIsNotNone(res)

        newer = TransferDomainRequest(
            to_username=self.mugglename,
            from_username=self.username,
            request_time=datetime.utcnow(),
            domain=self.domain.name)
        newer.save()

        res = TransferDomainRequest.get_active_transfer(self.domain, self.user.username)
        self.assertEqual(res.pk, newer.pk)
        self.assertFalse(TransferDomainRequest.objects.get(pk=self.transfer.pk).active)