コード例 #1
0
ファイル: test_tasks.py プロジェクト: jlrivera81/incr-228
    def setUp(self):
        super(AwardCourseCertificatesTestCase, self).setUp()

        self.available_date = datetime.now(pytz.UTC) + timedelta(days=1)
        self.course = CourseOverviewFactory.create(
            self_paced=True,  # Any option to allow the certificate to be viewable for the course
            certificate_available_date=self.available_date,
        )
        self.student = UserFactory.create(username='******')
        # Instantiate the Certificate first so that the config doesn't execute issuance
        self.certificate = GeneratedCertificateFactory.create(
            user=self.student,
            mode='verified',
            course_id=self.course.id,
            status='downloadable'
        )

        self.create_credentials_config()
        self.site = SiteFactory()

        ClientFactory.create(name='credentials')
        UserFactory.create(username=settings.CREDENTIALS_SERVICE_USERNAME)
コード例 #2
0
    def test_request_password_change(self):
        # Create and activate an account
        activation_key = create_account(self.USERNAME, self.PASSWORD,
                                        self.EMAIL)
        activate_account(activation_key)

        request = RequestFactory().post('/password')
        request.user = Mock()
        request.site = SiteFactory()

        with patch('crum.get_current_request', return_value=request):
            # Request a password change
            request_password_change(self.EMAIL, self.IS_SECURE)

        # Verify that one email message has been sent
        self.assertEqual(len(mail.outbox), 1)

        # Verify that the body of the message contains something that looks
        # like an activation link
        email_body = mail.outbox[0].body
        result = re.search(r'(?P<url>https?://[^\s]+)', email_body)
        self.assertIsNot(result, None)
コード例 #3
0
    def setUp(self):
        super().setUp()
        self.request = RequestFactory().request()
        self.request.session = {}
        self.request.site = SiteFactory()
        self.request.user = self.user
        self.addCleanup(set_current_request, None)
        set_current_request(self.request)
        self.addCleanup(RequestCache.clear_all_namespaces)

        # Enable all experiment waffle flags.
        experiment_waffle_flag_patcher = patch.object(ExperimentWaffleFlag,
                                                      'is_experiment_on',
                                                      return_value=True)
        experiment_waffle_flag_patcher.start()
        self.addCleanup(experiment_waffle_flag_patcher.stop)

        # Use our custom fake `stable_bucketing_hash_group` implementation.
        stable_bucket_patcher = patch(
            'lms.djangoapps.experiments.flags.stable_bucketing_hash_group',
            self._mock_stable_bucket)
        stable_bucket_patcher.start()
        self.addCleanup(stable_bucket_patcher.stop)
コード例 #4
0
ファイル: test_views.py プロジェクト: REDHOUSEVE/edx-platform
    def test_for_non_staff_user_return_error(self):
        password = '******'
        user = EdlyUserFactory(password=password)
        site = SiteFactory(name=self.site_name)
        site_config = SiteConfigurationFactory(
            values={'address': self.site_address}, site=site)
        EdlySubOrganizationFactory(lms_site=site)
        request = RequestFactory()
        request.user = user
        request.site = site

        self.client.login(username=user.username, password=password)
        self.client.cookies.load({
            settings.EDLY_USER_INFO_COOKIE_NAME:
            cookies._get_edly_user_info_cookie_string(request)
        })
        url = reverse('redhouse_panel:redhouse_panel_api.v0:site',
                      kwargs={'pk': site.id})
        response = self.client.get(url, SERVER_NAME=site.domain)

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
        self.assertEqual(response.data['detail'],
                         'You do not have permission to perform this action.')
コード例 #5
0
ファイル: test_api.py プロジェクト: mohit741/edx-platform
    def test_consent_needed_for_course(self):
        user = UserFactory(username='******')
        request = mock.MagicMock(session={}, user=user, site=SiteFactory(domain="example.com"))
        ec_uuid = 'cf246b88-d5f6-4908-a522-fc307e0b0c59'
        course_id = 'fake-course'
        self.mock_enterprise_learner_api()

        # test not required consent for example non enterprise customer
        self.mock_consent_not_required(user.username, course_id, ec_uuid)
        self.assertFalse(consent_needed_for_course(request, user, course_id))

        # test required and missing consent for example now he becomes a enterprise customer
        self.mock_consent_missing(user.username, course_id, ec_uuid)
        # still result should be False as it has been stored in cache "Not to show consent", so it will confirm that
        # cache is working fine
        self.assertFalse(consent_needed_for_course(request, user, course_id))
        # Removing cache
        clear_data_consent_share_cache(user.id, course_id)
        # Now test again
        self.assertTrue(consent_needed_for_course(request, user, course_id))

        # test after consent permission is granted
        self.mock_consent_get(user.username, course_id, ec_uuid)
        self.assertFalse(consent_needed_for_course(request, user, course_id))
コード例 #6
0
ファイル: test_flags.py プロジェクト: saadow123/1
    def setUp(self):
        super().setUp()

        self.user = UserFactory()

        self.request = RequestFactory().request()
        self.request.session = {}
        self.request.site = SiteFactory()
        self.request.user = self.user
        self.addCleanup(set_current_request, None)
        set_current_request(self.request)

        self.flag = ExperimentWaffleFlag('experiments',
                                         'test',
                                         num_buckets=2,
                                         experiment_id=0)
        self.key = CourseKey.from_string('a/b/c')

        bucket_patch = patch('experiments.flags.stable_bucketing_hash_group',
                             return_value=1)
        self.addCleanup(bucket_patch.stop)
        bucket_patch.start()

        self.addCleanup(RequestCache.clear_all_namespaces)
コード例 #7
0
    def test_consent_needed_for_course(self, mock_get_enterprise_learner_data):
        user = UserFactory(username='******')
        request = mock.MagicMock(
            user=user,
            site=SiteFactory(domain="example.com"),
            session={},
            COOKIES={},
            GET={},
        )
        ec_uuid = 'cf246b88-d5f6-4908-a522-fc307e0b0c59'
        course_id = 'fake-course'
        mock_get_enterprise_learner_data.return_value = self.get_mock_enterprise_learner_results()
        self.mock_enterprise_learner_api()

        # test that consent is not required for a non-enterprise customer
        self.mock_consent_not_required(user.username, course_id, ec_uuid)
        assert not consent_needed_for_course(request, user, course_id)

        # test required and missing consent for example now he becomes a enterprise customer
        self.mock_consent_missing(user.username, course_id, ec_uuid)
        # still result should be False as it has been stored in cache "Not to show consent", so it will confirm that
        # cache is working fine
        assert not consent_needed_for_course(request, user, course_id)
        # Removing cache
        clear_data_consent_share_cache(user.id, course_id, ec_uuid)
        # Now test again
        assert consent_needed_for_course(request, user, course_id)

        # test after consent permission is granted
        self.mock_consent_get(user.username, course_id, ec_uuid)
        assert not consent_needed_for_course(request, user, course_id)

        # test when the enrollment already exists without a consent record existing.
        clear_data_consent_share_cache(user.id, course_id, ec_uuid)
        self.mock_consent_missing(user.username, course_id, ec_uuid)
        assert not consent_needed_for_course(request, user, course_id, enrollment_exists=True)
コード例 #8
0
ファイル: test_tasks.py プロジェクト: yrchen/edx-platform
 def setUp(self):
     super().setUp()
     self.site = SiteFactory()
     self.course_run = CourseRunFactory()
     course = CourseFactory(course_runs=[self.course_run])
     self.data = [ProgramFactory(courses=[course])]
コード例 #9
0
    def setUp(self):
        super(TestProgramProgressMeter, self).setUp()

        self.user = UserFactory()
        self.site = SiteFactory()
コード例 #10
0
 def setUp(self):
     super(TestGetPrograms, self).setUp()
     self.site = SiteFactory()
コード例 #11
0
 def setUp(self):
     super(TestGetPathways, self).setUp()
     self.site = SiteFactory()
コード例 #12
0
 def setUp(self):
     self.command = SendEmailBaseCommand()
     self.site = SiteFactory()
     self.site_config = SiteConfigurationFactory.create(site=self.site)
コード例 #13
0
 def setUp(self):
     super(TestCredentialsSignalsUtils, self).setUp()
     self.site = SiteFactory()
     self.course_run = CourseRunFactory()
     course = CourseFactory(course_runs=[self.course_run])
     self.data = [ProgramFactory(courses=[course])]
コード例 #14
0
 def setUp(self):  # lint-amnesty, pylint: disable=super-method-not-called
     self.command = SendEmailBaseCommand()
     self.site = SiteFactory()
     self.site_config = SiteConfigurationFactory.create(site=self.site)
コード例 #15
0
ファイル: test_utils.py プロジェクト: rmulder/edx-platform
 def setUp(self):
     super(TestGetPrograms, self).setUp()  # lint-amnesty, pylint: disable=super-with-arguments
     self.site = SiteFactory()
コード例 #16
0
ファイル: test_utils.py プロジェクト: uetuluk/edx-platform
 def setUp(self):
     super().setUp()
     self.site = SiteFactory()
コード例 #17
0
 def setUp(self):
     super(ApiAccessRequestSignalTests, self).setUp()
     self.user = UserFactory()
     self.api_access_request = ApiAccessRequest(user=self.user, site=SiteFactory())
     self.send_new_pending_email_function = 'openedx.core.djangoapps.api_admin.models._send_new_pending_email'
     self.send_decision_email_function = 'openedx.core.djangoapps.api_admin.models._send_decision_email'
コード例 #18
0
ファイル: test_signals.py プロジェクト: rmulder/edx-platform
 def setUp(self):
     super(TestCredentialsSignalsUtils, self).setUp()  # lint-amnesty, pylint: disable=super-with-arguments
     self.site = SiteFactory()
     self.course_run = CourseRunFactory()
     course = CourseFactory(course_runs=[self.course_run])
     self.data = [ProgramFactory(courses=[course])]