Ejemplo n.º 1
0
    def test_handle_enroll_status_change(self, mock_update_course_enrollment, mock_get_current_request):
        """
        Test that the enroll status change signal handler properly calls the task routine
        """
        # should just return if no current request found
        mock_get_current_request.return_value = None
        handle_enroll_status_change(None)
        self.assertFalse(mock_update_course_enrollment.called)

        # now test with current request
        mock_get_current_request.return_value = self.request
        self.request.COOKIES["sailthru_bid"] = "cookie_bid"
        handle_enroll_status_change(
            None,
            event=EnrollStatusChange.enroll,
            user=self.user,
            mode="audit",
            course_id=self.course_id,
            cost=None,
            currency=None,
        )
        self.assertTrue(mock_update_course_enrollment.called)
        mock_update_course_enrollment.assert_called_with(
            TEST_EMAIL,
            self.course_url,
            EnrollStatusChange.enroll,
            "audit",
            course_id=self.course_id,
            currency=None,
            message_id="cookie_bid",
            unit_cost=None,
        )
    def test_handle_enroll_status_change(self, mock_update_course_enrollment,
                                         mock_get_current_request):
        """
        Test that the enroll status change signal handler properly calls the task routine
        """
        # should just return if no current request found
        mock_get_current_request.return_value = None
        handle_enroll_status_change(None)
        self.assertFalse(mock_update_course_enrollment.called)

        # now test with current request
        mock_get_current_request.return_value = self.request
        self.request.COOKIES['sailthru_bid'] = 'cookie_bid'
        handle_enroll_status_change(None,
                                    event=EnrollStatusChange.enroll,
                                    user=self.user,
                                    mode='audit',
                                    course_id=self.course_id,
                                    cost=None,
                                    currency=None)
        self.assertTrue(mock_update_course_enrollment.called)
        mock_update_course_enrollment.assert_called_with(
            TEST_EMAIL,
            self.course_url,
            EnrollStatusChange.enroll,
            'audit',
            course_id=self.course_id,
            currency=None,
            message_id='cookie_bid',
            unit_cost=None)
Ejemplo n.º 3
0
    def test_just_return_signals(self, mock_log_error):
        """
        Ensure that disabling Sailthru just returns
        """
        update_email_marketing_config(enabled=False)

        handle_enroll_status_change(None)
        self.assertFalse(mock_log_error.called)

        add_email_marketing_cookies(None)
        self.assertFalse(mock_log_error.called)

        email_marketing_register_user(None)
        self.assertFalse(mock_log_error.called)

        update_email_marketing_config(enabled=True)

        # test anonymous users
        anon = AnonymousUser()
        email_marketing_register_user(None, user=anon)
        self.assertFalse(mock_log_error.called)

        email_marketing_user_field_changed(None, user=anon)
        self.assertFalse(mock_log_error.called)

        # make sure enroll ignored when cost = 0
        update_email_marketing_config(enroll_cost=0)
        handle_enroll_status_change(
            None, event=EnrollStatusChange.enroll, user=self.user, mode="audit", course_id=self.course_id
        )
        self.assertFalse(mock_log_error.called)
Ejemplo n.º 4
0
    def test_just_return_signals(self, mock_log_error):
        """
        Ensure that disabling Sailthru just returns
        """
        update_email_marketing_config(enabled=False)

        handle_enroll_status_change(None)
        self.assertFalse(mock_log_error.called)

        add_email_marketing_cookies(None)
        self.assertFalse(mock_log_error.called)

        email_marketing_register_user(None)
        self.assertFalse(mock_log_error.called)

        update_email_marketing_config(enabled=True)

        # test anonymous users
        anon = AnonymousUser()
        email_marketing_register_user(None, user=anon)
        self.assertFalse(mock_log_error.called)

        email_marketing_user_field_changed(None, user=anon)
        self.assertFalse(mock_log_error.called)

        # make sure enroll ignored when cost = 0
        update_email_marketing_config(enroll_cost=0)
        handle_enroll_status_change(None, event=EnrollStatusChange.enroll,
                                    user=self.user,
                                    mode='audit', course_id=self.course_id)
        self.assertFalse(mock_log_error.called)
    def test_just_return_signals(self, mock_log_error):
        """
        Ensure that disabling Sailthru just returns
        """
        update_email_marketing_config(enabled=False)

        handle_enroll_status_change(None)
        self.assertFalse(mock_log_error.called)

        add_email_marketing_cookies(None)
        self.assertFalse(mock_log_error.called)

        email_marketing_register_user(None)
        self.assertFalse(mock_log_error.called)

        update_email_marketing_config(enabled=True)

        # test anonymous users
        anon = AnonymousUser()
        email_marketing_register_user(None, user=anon)
        self.assertFalse(mock_log_error.called)

        email_marketing_user_field_changed(None, user=anon)
        self.assertFalse(mock_log_error.called)
Ejemplo n.º 6
0
    def test_just_return_signals(self, mock_log_error):
        """
        Ensure that disabling Sailthru just returns
        """
        update_email_marketing_config(enabled=False)

        handle_enroll_status_change(None)
        self.assertFalse(mock_log_error.called)

        add_email_marketing_cookies(None)
        self.assertFalse(mock_log_error.called)

        email_marketing_register_user(None)
        self.assertFalse(mock_log_error.called)

        update_email_marketing_config(enabled=True)

        # test anonymous users
        anon = AnonymousUser()
        email_marketing_register_user(None, user=anon)
        self.assertFalse(mock_log_error.called)

        email_marketing_user_field_changed(None, user=anon)
        self.assertFalse(mock_log_error.called)
Ejemplo n.º 7
0
    def test_handle_enroll_status_change(self, mock_update_course_enrollment, mock_get_current_request):
        """
        Test that the enroll status change signal handler properly calls the task routine
        """
        # should just return if no current request found
        mock_get_current_request.return_value = None
        handle_enroll_status_change(None)
        self.assertFalse(mock_update_course_enrollment.called)

        # now test with current request
        mock_get_current_request.return_value = self.request
        self.request.COOKIES['sailthru_bid'] = 'cookie_bid'
        handle_enroll_status_change(None, event=EnrollStatusChange.enroll,
                                    user=self.user,
                                    mode='audit', course_id=self.course_id,
                                    cost=None, currency=None)
        self.assertTrue(mock_update_course_enrollment.called)
        mock_update_course_enrollment.assert_called_with(TEST_EMAIL,
                                                         self.course_url,
                                                         EnrollStatusChange.enroll,
                                                         'audit',
                                                         course_id=self.course_id_string,
                                                         message_id='cookie_bid')

        # now test with current request constructing url from request
        mock_get_current_request.return_value = self.request
        update_email_marketing_config(lms_url_override='')
        self.request.COOKIES['sailthru_bid'] = 'cookie_bid'
        handle_enroll_status_change(None, event=EnrollStatusChange.enroll,
                                    user=self.user,
                                    mode='audit', course_id=self.course_id,
                                    cost=None, currency=None)
        self.assertTrue(mock_update_course_enrollment.called)
        mock_update_course_enrollment.assert_called_with(TEST_EMAIL,
                                                         self.course_url,
                                                         EnrollStatusChange.enroll,
                                                         'audit',
                                                         course_id=self.course_id_string,
                                                         message_id='cookie_bid')