コード例 #1
0
ファイル: test_forms.py プロジェクト: fatimahseraj/lore
 def test_init(self):
     """Get the form page."""
     form = UploadForm(
         {"repository": self.repo.id},
         {"course_file": self.get_upload_file(".zip")},
     )
     self.assertTrue(form.is_valid())
     form.save(self.user.id, self.repo.id, self.client.session)
コード例 #2
0
ファイル: test_forms.py プロジェクト: dreganism/lore
 def attempt_extension(self, ext):
     """Try to upload a file with a given extension."""
     upload = self.get_upload_file(ext)
     log.debug("attempt_extension %s, %s", ext, upload.name)
     form = UploadForm({"repository": self.repo.id}, {"course_file": upload})
     is_valid = form.is_valid()
     log.debug("%s was valid: %s", upload.name, is_valid)
     return is_valid
コード例 #3
0
ファイル: test_forms.py プロジェクト: amir-qayyum-khan/lore
 def test_init(self):
     """Get the form page."""
     form = UploadForm(
         {"repository": self.repo.id},
         {"course_file": self.get_upload_file(".zip")},
     )
     self.assertTrue(form.is_valid())
     form.save(self.user.id, self.repo.id)
コード例 #4
0
ファイル: views.py プロジェクト: olabi/lore
def upload(request, repo_slug):
    """
    Upload a OLX archive.
    """
    repo = get_repo(repo_slug, request.user.id)
    form = UploadForm()
    if request.method == "POST":
        form = UploadForm(data=request.POST, files=request.FILES)
        if form.is_valid():
            try:
                form.save(request.user.id, repo.id)
                return redirect("/repositories/{0}/".format(repo_slug))
            except ValueError as ex:
                # Coverage exception reasoning: After successful upload,
                # extraction, and validation, any error *should* be
                # "Duplicate course," and if it's not, it will be re-raised
                # and we'll code for it then.
                if "Duplicate course" not in ex.args:  # pragma: no cover
                    raise ex
                form.add_error("course_file", "Duplicate course")
    return render(
        request,
        "upload.html",
        {
            'form': form,
            "repo": repo
        },
    )
コード例 #5
0
ファイル: test_forms.py プロジェクト: fatimahseraj/lore
 def attempt_extension(self, ext):
     """Try to upload a file with a given extension."""
     upload = self.get_upload_file(ext)
     log.debug("attempt_extension %s, %s", ext, upload.name)
     form = UploadForm(
         {"repository": self.repo.id},
         {"course_file": upload},
     )
     is_valid = form.is_valid()
     log.debug("%s was valid: %s", upload.name, is_valid)
     return is_valid
コード例 #6
0
ファイル: views.py プロジェクト: olabi/lore
def upload(request, repo_slug):
    """
    Upload a OLX archive.
    """
    repo = get_repo(repo_slug, request.user.id)
    form = UploadForm()
    if request.method == "POST":
        form = UploadForm(
            data=request.POST, files=request.FILES)
        if form.is_valid():
            try:
                form.save(request.user.id, repo.id)
                return redirect("/repositories/{0}/".format(repo_slug))
            except ValueError as ex:
                # Coverage exception reasoning: After successful upload,
                # extraction, and validation, any error *should* be
                # "Duplicate course," and if it's not, it will be re-raised
                # and we'll code for it then.
                if "Duplicate course" not in ex.args:  # pragma: no cover
                    raise ex
                form.add_error("course_file", "Duplicate course")
    return render(
        request,
        "upload.html",
        {'form': form, "repo": repo},
    )