mirror of
https://github.com/sissbruecker/linkding.git
synced 2025-08-08 03:08:29 +02:00
Move more logic into bookmark form
This commit is contained in:
@@ -2,8 +2,10 @@ import datetime
|
||||
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.test import TestCase, override_settings
|
||||
from django.test.client import RequestFactory
|
||||
|
||||
from bookmarks.models import BookmarkForm, Bookmark
|
||||
from bookmarks.forms import BookmarkForm
|
||||
from bookmarks.models import Bookmark
|
||||
from bookmarks.tests.helpers import BookmarkFactoryMixin
|
||||
|
||||
ENABLED_URL_VALIDATION_TEST_CASES = [
|
||||
@@ -62,12 +64,15 @@ class BookmarkValidationTestCase(TestCase, BookmarkFactoryMixin):
|
||||
self._run_bookmark_model_url_validity_checks(DISABLED_URL_VALIDATION_TEST_CASES)
|
||||
|
||||
def test_bookmark_form_should_validate_required_fields(self):
|
||||
form = BookmarkForm(data={"url": ""})
|
||||
rf = RequestFactory()
|
||||
request = rf.post("/", data={"url": ""})
|
||||
form = BookmarkForm(request)
|
||||
|
||||
self.assertEqual(len(form.errors), 1)
|
||||
self.assertIn("required", str(form.errors))
|
||||
|
||||
form = BookmarkForm(data={"url": None})
|
||||
request = rf.post("/", data={})
|
||||
form = BookmarkForm(request)
|
||||
|
||||
self.assertEqual(len(form.errors), 1)
|
||||
self.assertIn("required", str(form.errors))
|
||||
@@ -102,7 +107,9 @@ class BookmarkValidationTestCase(TestCase, BookmarkFactoryMixin):
|
||||
def _run_bookmark_form_url_validity_checks(self, cases):
|
||||
for case in cases:
|
||||
url, expectation = case
|
||||
form = BookmarkForm(data={"url": url})
|
||||
rf = RequestFactory()
|
||||
request = rf.post("/", data={"url": url})
|
||||
form = BookmarkForm(request)
|
||||
|
||||
if expectation:
|
||||
self.assertEqual(len(form.errors), 0)
|
||||
|
Reference in New Issue
Block a user