Exemplo n.º 1
0
def annotation_create(request, asset_id):
    """
    delegate to djangosherd view and redirect back to asset workspace

    but first, stuff a range into the request
    and get the annotation context from the url
    """

    # Verify asset exists
    get_object_or_404(Asset, pk=asset_id, course=request.course)

    form = request.POST.copy()
    form['annotation-context_pk'] = asset_id

    # If the data comes through as json, parse the request.body into
    # the form.
    if request.content_type == 'application/json':
        d = json.loads(request.body)
        d['annotation-annotation_data'] = json.dumps(
            d['annotation-annotation_data'])
        form.update(d)

    request.POST = form

    form = request.GET.copy()
    form['annotation-next'] = reverse('asset-view', args=[asset_id])
    request.GET = form

    return create_annotation(request)
Exemplo n.º 2
0
    def test_create_annotation(self):
        request = RequestFactory().post('/', self.data)
        request.user = self.student_one
        response = create_annotation(request)
        self.assertEquals(response.status_code, 302)

        note = SherdNote.objects.get(title='Annotation Test')
        self.assertEquals(note.range1, -4.5)
        self.assertEquals(note.range2, 23)
        self.assertEquals(note.tags, 'foo,bar')
Exemplo n.º 3
0
    def test_create_annotation(self):
        request = RequestFactory().post('/', self.data)
        request.user = self.student_one
        response = create_annotation(request)
        self.assertEquals(response.status_code, 302)

        note = SherdNote.objects.get(title='Annotation Test')
        self.assertEquals(note.range1, -4.5)
        self.assertEquals(note.range2, 23)
        self.assertEquals(note.tags, 'foo,bar')
Exemplo n.º 4
0
    def test_create_annotation_with_project(self):
        project = ProjectFactory()
        self.data['project'] = project.id

        request = RequestFactory().post('/', self.data)
        request.user = self.student_one
        response = create_annotation(request)
        self.assertEquals(response.status_code, 302)

        note = SherdNote.objects.get(title='Annotation Test')
        ProjectNote.objects.get(annotation=note, project=project)
Exemplo n.º 5
0
    def test_create_annotation_with_project(self):
        project = ProjectFactory()
        self.data['project'] = project.id

        request = RequestFactory().post('/', self.data)
        request.user = self.student_one
        response = create_annotation(request)
        self.assertEquals(response.status_code, 302)

        note = SherdNote.objects.get(title='Annotation Test')
        ProjectNote.objects.get(annotation=note, project=project)
Exemplo n.º 6
0
    def test_create_annotation_ajax(self):
        request = RequestFactory().post('/', self.data,
                                        HTTP_X_REQUESTED_WITH='XMLHttpRequest')
        request.user = self.student_one
        response = create_annotation(request)
        self.assertEquals(response.status_code, 200)

        note = SherdNote.objects.get(title='Annotation Test')

        the_json = loads(response.content)
        self.assertEquals(the_json['asset']['id'], self.asset.id)
        self.assertEquals(the_json['annotation']['id'], note.id)
Exemplo n.º 7
0
    def test_create_annotation_ajax(self):
        request = RequestFactory().post('/',
                                        self.data,
                                        HTTP_X_REQUESTED_WITH='XMLHttpRequest')
        request.user = self.student_one
        response = create_annotation(request)
        self.assertEquals(response.status_code, 200)

        note = SherdNote.objects.get(title='Annotation Test')

        the_json = loads(response.content)
        self.assertEquals(the_json['asset']['id'], self.asset.id)
        self.assertEquals(the_json['annotation']['id'], note.id)
Exemplo n.º 8
0
def annotation_create(request, asset_id):
    """
    delegate to djangosherd view and redirect back to asset workspace

    but first, stuff a range into the request
    and get the annotation context from the url
    """

    # Verify asset exists
    get_object_or_404(Asset, pk=asset_id, course=request.course)

    form = request.POST.copy()
    form['annotation-context_pk'] = asset_id
    request.POST = form

    form = request.GET.copy()
    form['annotation-next'] = reverse('asset-view', args=[asset_id])
    request.GET = form

    return create_annotation(request)
Exemplo n.º 9
0
def annotation_create(request, asset_id):
    """
    delegate to djangosherd view and redirect back to asset workspace

    but first, stuff a range into the request
    and get the annotation context from the url
    """

    # Verify asset exists
    get_object_or_404(Asset, pk=asset_id, course=request.course)

    form = request.POST.copy()
    form['annotation-context_pk'] = asset_id
    request.POST = form

    form = request.GET.copy()
    form['annotation-next'] = reverse('asset-view', args=[asset_id])
    request.GET = form

    return create_annotation(request)