Exemple #1
0
 def setUp(self):
     super(SignAndSendReplaceResultTest, self).setUp()
     self.course_key = CourseLocator(org='some_org',
                                     course='some_course',
                                     run='some_run')
     self.usage_key = BlockUsageLocator(course_key=self.course_key,
                                        block_type='problem',
                                        block_id='block_id')
     self.user = UserFactory.create()
     consumer = LtiConsumer(consumer_name='consumer',
                            consumer_key='consumer_key',
                            consumer_secret='secret')
     consumer.save()
     outcome = OutcomeService(
         lis_outcome_service_url='http://example.com/service_url',
         lti_consumer=consumer,
     )
     outcome.save()
     self.assignment = GradedAssignment(
         user=self.user,
         course_key=self.course_key,
         usage_key=self.usage_key,
         outcome_service=outcome,
         lis_result_sourcedid='sourcedid',
     )
     self.assignment.save()
def get_lti_consumer():
    """
    Helper method for all Signature Validator tests to get an LtiConsumer object.
    """
    return LtiConsumer(consumer_name='Consumer Name',
                       consumer_key='Consumer Key',
                       consumer_secret='Consumer Secret')
Exemple #3
0
    def setUp(self):
        super(BaseOutcomeTest, self).setUp()
        self.course_key = CourseLocator(org='some_org',
                                        course='some_course',
                                        run='some_run')
        self.usage_key = BlockUsageLocator(course_key=self.course_key,
                                           block_type='problem',
                                           block_id='block_id')
        self.user = UserFactory.create()
        self.consumer = LtiConsumer(consumer_name='Lti Consumer Name',
                                    consumer_key='consumer_key',
                                    consumer_secret='consumer_secret',
                                    instance_guid='tool_instance_guid')
        self.consumer.save()
        outcome = OutcomeService(
            lis_outcome_service_url='http://example.com/service_url',
            lti_consumer=self.consumer)
        outcome.save()
        self.assignment = GradedAssignment(
            user=self.user,
            course_key=self.course_key,
            usage_key=self.usage_key,
            outcome_service=outcome,
            lis_result_sourcedid='sourcedid',
            version_number=1,
        )
        self.assignment.save()

        self.send_score_update_mock = self.setup_patch(
            'lti_provider.outcomes.send_score_update', None)
Exemple #4
0
 def setUp(self):
     super(CreateLtiUserTest, self).setUp()
     self.lti_consumer = LtiConsumer(
         consumer_name='TestConsumer',
         consumer_key='TestKey',
         consumer_secret='TestSecret'
     )
     self.lti_consumer.save()
 def setUp(self):
     super(AuthenticateLtiUserTest, self).setUp()
     self.lti_consumer = LtiConsumer(consumer_name='TestConsumer',
                                     consumer_key='TestKey',
                                     consumer_secret='TestSecret')
     self.lti_consumer.save()
     self.lti_user_id = 'lti_user_id'
     self.edx_user_id = 'edx_user_id'
     self.old_user = UserFactory.create()
     self.request = RequestFactory().post('/')
     self.request.user = self.old_user
 def setUp(self):
     super(LtiBackendTest, self).setUp()
     self.edx_user = UserFactory.create()
     self.edx_user.save()
     self.lti_consumer = LtiConsumer(consumer_key="Consumer Key",
                                     consumer_secret="Consumer Secret")
     self.lti_consumer.save()
     self.lti_user_id = 'LTI User ID'
     LtiUser(lti_consumer=self.lti_consumer,
             lti_user_id=self.lti_user_id,
             edx_user=self.edx_user).save()
Exemple #7
0
 def test_create_two_lti_consumers_with_empty_instance_guid(self):
     """
     Test ability to create two or more LTI consumers through the Django admin
     with empty instance_guid field.
     A blank guid field is required when a customer enables a new secret/key combination for
     LTI integration with their LMS.
     """
     lti_consumer_first = LtiConsumer(
         consumer_name='lti_consumer_name_second',
         consumer_key='lti_consumer_key_second',
         consumer_secret='lti_consumer_secret_second',
         instance_guid='')
     lti_consumer_first.save()
     lti_consumer_second = LtiConsumer(
         consumer_name='lti_consumer_name_third',
         consumer_key='lti_consumer_key_third',
         consumer_secret='lti_consumer_secret_third',
         instance_guid='')
     lti_consumer_second.save()
     count = LtiConsumer.objects.count()
     self.assertEqual(count, 3)
Exemple #8
0
 def setUp(self):
     super(StoreOutcomeParametersTest, self).setUp()
     self.user = UserFactory.create()
     self.course_key = CourseLocator(org='some_org',
                                     course='some_course',
                                     run='some_run')
     self.usage_key = BlockUsageLocator(course_key=self.course_key,
                                        block_type='problem',
                                        block_id='block_id')
     self.consumer = LtiConsumer(consumer_name='consumer',
                                 consumer_key='consumer_key',
                                 consumer_secret='secret')
     self.consumer.save()
 def setUp(self):
     super(UserManagementHelperTest, self).setUp()
     self.request = RequestFactory().post('/')
     self.old_user = UserFactory.create()
     self.new_user = UserFactory.create()
     self.new_user.save()
     self.request.user = self.old_user
     self.lti_consumer = LtiConsumer(consumer_name='TestConsumer',
                                     consumer_key='TestKey',
                                     consumer_secret='TestSecret')
     self.lti_consumer.save()
     self.lti_user = LtiUser(lti_user_id='lti_user_id',
                             edx_user=self.new_user)
 def setUp(self):
     super(SendOutcomeTest, self).setUp()
     self.course_key = CourseLocator(
         org='some_org',
         course='some_course',
         run='some_run'
     )
     self.usage_key = BlockUsageLocator(
         course_key=self.course_key,
         block_type='problem',
         block_id='block_id'
     )
     self.user = UserFactory.create()
     self.points_possible = 10
     self.points_earned = 3
     self.generate_xml_mock = self.setup_patch(
         'lti_provider.outcomes.generate_replace_result_xml',
         'replace result XML'
     )
     self.replace_result_mock = self.setup_patch(
         'lti_provider.outcomes.sign_and_send_replace_result',
         'replace result response'
     )
     self.check_result_mock = self.setup_patch(
         'lti_provider.outcomes.check_replace_result_response',
         True
     )
     consumer = LtiConsumer(
         consumer_name='Lti Consumer Name',
         consumer_key='consumer_key',
         consumer_secret='consumer_secret',
         instance_guid='tool_instance_guid'
     )
     consumer.save()
     outcome = OutcomeService(
         lis_outcome_service_url='http://example.com/service_url',
         lti_consumer=consumer
     )
     outcome.save()
     self.assignment = GradedAssignment(
         user=self.user,
         course_key=self.course_key,
         usage_key=self.usage_key,
         outcome_service=outcome,
         lis_result_sourcedid='sourcedid',
     )
     self.assignment.save()
Exemple #11
0
 def create_outcome_service(self, id_suffix):
     """
     Create and save a new OutcomeService model in the test database. The
     OutcomeService model requires an LtiConsumer model, so we create one of
     those as well. The method takes an ID string that is used to ensure that
     unique fields do not conflict.
     """
     lti_consumer = LtiConsumer(
         consumer_name='lti_consumer_name' + id_suffix,
         consumer_key='lti_consumer_key' + id_suffix,
         consumer_secret='lti_consumer_secret' + id_suffix,
         instance_guid='lti_instance_guid' + id_suffix)
     lti_consumer.save()
     outcome_service = OutcomeService(
         lis_outcome_service_url='https://example.com/outcomes/' +
         id_suffix,
         lti_consumer=lti_consumer)
     outcome_service.save()
     return outcome_service