Пример #1
0
    def setUp(self):
        super(EditUnitViewTests, self).setUp()
        # need to create user with username 'admin'
        User.objects.create_user(
            username='******'
        )
        self.pk = self.get_test_unitlessons()[0].id
        self.url = reverse(
            'ctms:unit_edit',
            kwargs={
                'course_pk': self.get_test_course().id,
                'courselet_pk': self.get_test_courseunit().id,
                'pk': self.get_test_unitlessons()[0].id,
            }
        )
        self.default_data = {
            'form-TOTAL_FORMS': 1,
            'form-INITIAL_FORMS': 0,
            'form-MIN_NUM_FORMS': 0,
            'form-MAX_NUM_FORMS': 1000,
            'form-0-id': '',
            'form-0-title': '',
            'form-0-text': '',
        }

        # creating the new Lessons of kind 'answer' to avoid redirecting to the Get Started page
        lesson = Lesson(title='title', text='text', addedBy=self.user, kind=Lesson.ANSWER)
        lesson2 = Lesson(title='title', text='text', addedBy=self.user, kind=Lesson.ANSWER)
        lesson.save()
        lesson2.save()
Пример #2
0
 def setUp(self):
     self.user = User.objects.create_user(username='******', password='******')
     self.course = Course(title='test_title', addedBy=self.user)
     self.course.save()
     self.concept = Concept(title='test title', addedBy=self.user)
     self.concept.save()
     self.lesson = Lesson(title='ugh',
                          text='brr',
                          addedBy=self.user,
                          kind=Lesson.ORCT_QUESTION)
     self.lesson.save_root()
     self.lesson.add_concept_link(self.concept, ConceptLink.TESTS,
                                  self.user)
     self.unit = Unit(title='test unit title', addedBy=self.user)
     self.unit.save()
     self.unit_lesson = UnitLesson(unit=self.unit,
                                   addedBy=self.user,
                                   treeID=42,
                                   lesson=self.lesson)
     self.unit_lesson.save()
     self.response = Response(course=self.course,
                              lesson=self.lesson,
                              author=self.user,
                              unitLesson=self.unit_lesson,
                              confidence=Response.GUESS,
                              title='test title',
                              text='test text')
     self.response.save()
     self.context = {
         'actionTarget': '/ct/courses/1/units/1/',
         'ul': self.unit_lesson,
         'test_text': 'This is a test text',
         'r': self.response
     }
Пример #3
0
def test_simple_chat_flow(fsm, enroll_unit_code, client, user):
    """
    Try to test very simply chat flow.
    """
    get_specs()[0].save_graph('admin')
    get_specs_additional()[0].save_graph('admin')
    get_specs_resource()[0].save_graph('admin')
    get_specs_faq()[0].save_graph('admin')

    lesson = Lesson(title='title', text='きつね', addedBy=user, url='/test/url/')
    lesson.save()
    unitlesson = UnitLesson(unit=enroll_unit_code.courseUnit.unit,
                            order=0,
                            lesson=lesson,
                            addedBy=user,
                            treeID=lesson.id)
    unitlesson.save()
    client.login(username='******', password='******')

    page = Session(enroll_unit_code, client)
    page.create_session()

    assert page.show_input() is None
    assert len(page.show_messages()) == 3
    assert page.show_extras() == {'updates': {'threadId': None}}
Пример #4
0
 def setUp(self):
     self.user = User.objects.create_user(
         username='******', email='jacob@_', password='******'
     )
     # have to login or Django self.client.session storage won't work
     self.client.login(username='******', password='******')
     self.course = Course(
         title='Great Course', description='the bestest', addedBy=self.user
     )
     self.course.save()
     self.unit = Unit(title='My Courselet', addedBy=self.user)
     self.unit.save()
     self.lesson = Lesson(
         title='Big Deal', text='very interesting info', addedBy=self.user
     )
     self.lesson.save_root()
     self.unitLesson = UnitLesson.create_from_lesson(
         self.lesson, self.unit, order='APPEND'
     )
     self.ulQ = create_question_unit(self.user)
     self.ulQ2 = create_question_unit(
         self.user, 'Pretest', 'Scary Question', 'Tell me something.'
     )
     self.json_mixin = JSONBlobMixin()
     self.fsmDict = dict(name='test', title='try this')
     self.nodeDict = dict(
         START=dict(title='start here', path='ct:home', funcName='fsm.fsm_plugin.testme.START'),
         MID=dict(title='in the middle', path='ct:about', doLogging=True),
         END=dict(title='end here', path='ct:home')
     )
     self.edgeDict = (
         dict(name='next', fromNode='START', toNode='END', title='go go go'),
         dict(name='select_Lesson', fromNode='MID', toNode='MID', title='go go go'),
     )
Пример #5
0
    def setUp(self):
        self.username, self.password = '******', 'test'
        self.user = User.objects.create_user('test', '*****@*****.**', 'test')
        self.instructor = Instructor.objects.create(user=self.user, institution='institute',
                                                    what_do_you_teach='something')

        self.user2 = User.objects.create_user('test1', '*****@*****.**', 'test')
        self.instructor2 = Instructor.objects.create(user=self.user2, institution='institution',
                                                     what_do_you_teach='something')

        self.unit = Unit(title='Test title', addedBy=self.user)
        self.unit.save()
        self.course = Course(title='Test title',
                             description='test description',
                             access='Public',
                             enrollCode='111',
                             lockout='222',
                             addedBy=self.user)
        self.course.save()

        self.courseunit = CourseUnit(
            unit=self.unit, course=self.course,
            order=0, addedBy=self.user, releaseTime=timezone.now()
        )
        self.courseunit.save()
        self.lesson = Lesson(title='title', text='text', addedBy=self.user)
        self.lesson.save()
        self.unitlesson = UnitLesson(
            unit=self.unit, order=0,
            lesson=self.lesson, addedBy=self.user,
            treeID=self.lesson.id
        )
        self.unitlesson.save()
        self.client.login(username=self.username, password=self.password)
        self.url = reverse('ctms:my_courses')
Пример #6
0
 def setUp(self):
     self.user = User.objects.create_user(username='******', password='******')
     self.client.login(username='******', password='******')
     self.course = Course(title='test_title', addedBy=self.user)
     self.course.save()
     self.unit = Unit(title='test unit title', addedBy=self.user)
     self.unit.save()
     self.course_unit = CourseUnit(course=self.course,
                                   unit=self.unit,
                                   order=0,
                                   addedBy=self.user)
     self.course_unit.save()
     self.role = Role(course=self.course,
                      user=self.user,
                      role=Role.INSTRUCTOR)
     self.role.save()
     self.concept = Concept.new_concept('bad', 'idea', self.unit, self.user)
     self.lesson = Lesson(title='New York Test Lesson',
                          text='brr',
                          addedBy=self.user)
     self.lesson.save_root(self.concept)
     self.unit_lesson = UnitLesson(unit=self.unit,
                                   lesson=self.lesson,
                                   addedBy=self.user,
                                   treeID=self.lesson.id)
     self.unit_lesson.save()
Пример #7
0
def lesson_question(user, concept):
    instance = Lesson(title='ugh',
                      text='brr',
                      addedBy=user,
                      kind=Lesson.ORCT_QUESTION,
                      concept=concept)
    instance.save_root(concept)
    return instance
Пример #8
0
    def setUp(self):
        self.user = User.objects.create_user(username='******', password='******')
        self.client.login(username='******', password='******')

        self.course = Course(title='test_title', addedBy=self.user)
        self.course.save()
        self.unit = Unit(title='test unit title', addedBy=self.user)
        self.unit.save()
        self.course_unit = CourseUnit(
            course=self.course,
            unit=self.unit,
            order=0,
            addedBy=self.user
        )
        self.course_unit.releaseTime = timezone.now() - datetime.timedelta(days=1)
        self.course_unit.save()

        self.enroll = EnrollUnitCode(courseUnit=self.course_unit)
        self.enroll.save()

        self.role = Role(course=self.course, user=self.user, role=Role.INSTRUCTOR)
        self.role.save()

        self.student_role = Role(course=self.course, user=self.user, role=Role.ENROLLED)
        self.student_role.save()

        self.concept = Concept.new_concept('bad', 'idea', self.unit, self.user)

        self.lesson = Lesson(
            title='New York Test Lesson',
            text='brr',
            addedBy=self.user,
            kind=Lesson.ORCT_QUESTION
        )
        self.lesson.save_root(self.concept)

        self.unit_lesson = UnitLesson(
            unit=self.unit,
            lesson=self.lesson,
            addedBy=self.user,
            treeID=self.lesson.id,
            order=0
        )
        self.unit_lesson.save()

        self.unit_lesson_answer = UnitLesson(
            parent=self.unit_lesson,
            unit=self.unit,
            lesson=self.lesson,
            addedBy=self.user,
            treeID=self.lesson.id,
            kind=UnitLesson.ANSWERS
        )
        self.unit_lesson_answer.save()

        self.user = User.objects.create_user(username='******', password='******')

        call_command('fsm_deploy')
Пример #9
0
def lesson_question_parametrized(request, user, concept, image_file):
    instance = Lesson(title='ugh',
                      text='brr',
                      addedBy=user,
                      kind=Lesson.ORCT_QUESTION,
                      sub_kind=request.param,
                      concept=concept,
                      attachment=image_file)
    instance.save_root(concept)
    return instance
Пример #10
0
def lesson_question_canvas(user, concept, base64_gif_image):
    instance = Lesson(
        title='ugh',
        text='brr',
        addedBy=user,
        kind=Lesson.ORCT_QUESTION,
        sub_kind=Lesson.CANVAS,
        concept=concept,
        attachment=base64_to_file(
            'data:image/gif;base64,{}'.format(base64_gif_image)),
    )
    instance.save_root(concept)
    return instance
Пример #11
0
    def setUp(self):
        self.client = Client()
        self.user = User.objects.create_user('test', '*****@*****.**', 'test')
        get_specs()[0].save_graph(self.user.username)
        get_specs_additional()[0].save_graph(self.user.username)
        get_specs_resource()[0].save_graph(self.user.username)

        self.unit = Unit(title='Test title', addedBy=self.user)
        self.unit.save()
        self.course = Course(title='Test title',
                             description='test description',
                             access='Public',
                             enrollCode='111',
                             lockout='222',
                             addedBy=self.user)
        self.course.save()

        self.courseunit = CourseUnit(
            unit=self.unit, course=self.course,
            order=0, addedBy=self.user, releaseTime=timezone.now()
        )
        self.courseunit.save()
        self.concept = Concept.new_concept('bad', 'idea', self.unit, self.user)
        lesson = Lesson(title='title', text='text', addedBy=self.user)
        lesson.save()
        self.unitlesson = UnitLesson(
            unit=self.unit, order=0, lesson=lesson, addedBy=self.user, treeID=lesson.id
        )
        self.unitlesson.save()
        resource_lesson = Lesson(
            title='title for resource', text='text for resource', addedBy=self.user
        )
        resource_lesson.save()
        self.resource_unitlesson = UnitLesson(
            unit=self.unit, lesson=resource_lesson, addedBy=self.user, treeID=resource_lesson.id
        )
        self.resource_unitlesson.save()
Пример #12
0
    def setUp(self):
        """
        Preconditions.
        """
        from chat.fsm_plugin.chat import get_specs
        from chat.fsm_plugin.additional import get_specs as get_specs_additional
        self.client = Client()
        self.user = User.objects.create_user('test', '*****@*****.**', 'test')
        get_specs()[0].save_graph(self.user.username)
        get_specs_additional()[0].save_graph(self.user.username)

        mocked_nonce = u'135685044251684026041377608307'
        mocked_timestamp = u'1234567890'
        mocked_decoded_signature = u'my_signature='
        self.headers = {
            u'user_id': 1,
            u'lis_person_name_full': u'Test Username',
            u'lis_person_name_given': u'First',
            u'lis_person_name_family': u'Second',
            u'lis_person_contact_email_primary': u'*****@*****.**',
            u'lis_person_sourcedid': u'Test_Username',
            u'oauth_callback': u'about:blank',
            u'launch_presentation_return_url': '',
            u'lti_message_type': u'basic-lti-launch-request',
            u'lti_version': 'LTI-1p0',
            u'roles': u'Student',
            u'context_id': 1,
            u'tool_consumer_info_product_family_code': u'moodle',
            u'context_title': u'Test title',
            u'tool_consumer_instance_guid': u'test.dot.com',
            u'resource_link_id': 'dfgsfhrybvrth',
            u'lis_result_sourcedid': 'wesgaegagrreg',
            u'oauth_nonce': mocked_nonce,
            u'oauth_timestamp': mocked_timestamp,
            u'oauth_consumer_key': u'',
            u'oauth_signature_method': u'HMAC-SHA1',
            u'oauth_version': u'1.0',
            u'oauth_signature': mocked_decoded_signature
        }

        self.unit = Unit(title='Test title', addedBy=self.user)
        self.unit.save()
        self.course = Course(title='Test title',
                             description='test description',
                             access='Public',
                             enrollCode='111',
                             lockout='222',
                             addedBy=self.user)
        self.course.save()
        self.course_ref = CourseRef(
            course=self.course,
            context_id=self.headers.get('context_id'),
            tc_guid=self.headers.get('tool_consumer_instance_guid'))
        self.course_ref.save()
        self.course_ref.instructors.add(self.user)

        self.courseunit = CourseUnit(unit=self.unit,
                                     course=self.course,
                                     order=0,
                                     addedBy=self.user,
                                     releaseTime=timezone.now())
        self.courseunit.save()
        lesson = Lesson(title='title', text='text', addedBy=self.user)
        lesson.save()
        unitlesson = UnitLesson(unit=self.unit,
                                order=0,
                                lesson=lesson,
                                addedBy=self.user,
                                treeID=lesson.id)
        unitlesson.save()
Пример #13
0
    def setUp(self):
        self.username, self.password = '******', 'test'
        self.user = User.objects.create_user(self.username, '*****@*****.**', self.password)

        self.instructor = Instructor.objects.create(user=self.user, institution='institute',
                                                    what_do_you_teach='something')

        self.username2, self.password2 = 'test1', 'test'
        self.user2 = User.objects.create_user(self.username2, '*****@*****.**', self.password2)
        self.instructor2 = Instructor.objects.create(user=self.user2, institution='institute',
                                                     what_do_you_teach='something')

        self.unit = Unit(title='Test title', addedBy=self.user)
        self.unit.save()
        self.course = Course(title='Test title',
                             description='test description',
                             access='Public',
                             enrollCode='111',
                             lockout='222',
                             addedBy=self.user)
        self.course.save()

        self.courseunit = CourseUnit(
            unit=self.unit, course=self.course,
            order=0, addedBy=self.user, releaseTime=timezone.now()
        )
        self.courseunit.save()
        self.lesson = Lesson(title='title', text='text', addedBy=self.user)
        self.lesson.save()
        self.unitlesson = UnitLesson(
            unit=self.unit, order=0,
            lesson=self.lesson, addedBy=self.user,
            treeID=self.lesson.id
        )
        self.unitlesson.save()

        self.resp1 = Response(
            unitLesson=self.unitlesson,
            kind=Response.ORCT_RESPONSE,
            lesson=self.lesson,
            course=self.course,
            text="Some text user may respond",
            author=self.user,
            status=NEED_HELP_STATUS,
            selfeval=Response.DIFFERENT
        )
        self.resp1.save()

        self.resp2 = Response(
            unitLesson=self.unitlesson,
            kind=Response.ORCT_RESPONSE,
            lesson=self.lesson,
            course=self.course,
            text="Some text user may be responded 2",
            author=self.user,
            status=NEED_HELP_STATUS,
            selfeval=Response.DIFFERENT
        )
        self.resp2.save()
        self.default_data = {}

        self.client.login(username=self.username, password=self.password)
        self.url = reverse('ctms:course_settings', kwargs={'pk': self.course.id})