mirror of
https://github.com/Hopiu/wagtail.git
synced 2026-03-28 20:00:29 +00:00
Merge pull request #969 from kaedroho/warnings-fixes
Some warnings fixes
This commit is contained in:
commit
9d9bfc1f08
7 changed files with 57 additions and 18 deletions
|
|
@ -25,9 +25,9 @@ class WagtailTestUtils(object):
|
|||
with warnings.catch_warnings(record=True) as warning_list: # catch all warnings
|
||||
yield
|
||||
|
||||
# rethrow all warnings that were not DeprecationWarnings
|
||||
# rethrow all warnings that were not DeprecationWarnings or PendingDeprecationWarnings
|
||||
for w in warning_list:
|
||||
if not issubclass(w.category, DeprecationWarning):
|
||||
if not issubclass(w.category, (DeprecationWarning, PendingDeprecationWarning)):
|
||||
warnings.showwarning(message=w.message, category=w.category, filename=w.filename, lineno=w.lineno, file=w.file, line=w.line)
|
||||
|
||||
# borrowed from https://github.com/django/django/commit/9f427617e4559012e1c2fd8fce46cbe225d8515d
|
||||
|
|
|
|||
|
|
@ -2,13 +2,8 @@ from __future__ import unicode_literals
|
|||
|
||||
from six import text_type, with_metaclass
|
||||
|
||||
try:
|
||||
# renamed util -> utils in Django 1.7; try the new name first
|
||||
from django.forms.utils import flatatt
|
||||
except ImportError:
|
||||
from django.forms.util import flatatt
|
||||
|
||||
from django.forms import MediaDefiningClass, Media
|
||||
from django.forms.utils import flatatt
|
||||
from django.utils.text import slugify
|
||||
from django.utils.html import format_html
|
||||
from django.utils.safestring import mark_safe
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
from django.db.models import Q, get_models
|
||||
from django.db.models import Q
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
from django.apps import apps
|
||||
|
||||
from treebeard.mp_tree import MP_NodeQuerySet
|
||||
|
||||
from wagtail.wagtailsearch.backends import get_search_backend
|
||||
|
|
@ -154,7 +156,7 @@ class PageQuerySet(MP_NodeQuerySet):
|
|||
|
||||
def type_q(self, klass):
|
||||
content_types = ContentType.objects.get_for_models(*[
|
||||
model for model in get_models()
|
||||
model for model in apps.get_models()
|
||||
if issubclass(model, klass)
|
||||
]).values()
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,10 @@
|
|||
import unittest
|
||||
|
||||
from django.test import TestCase
|
||||
from django.core.cache import cache
|
||||
|
||||
from wagtail.wagtailcore.models import Page, Site
|
||||
from wagtail.wagtailcore.utils import resolve_model_string
|
||||
from wagtail.tests.models import SimplePage
|
||||
|
||||
|
||||
|
|
@ -142,3 +145,42 @@ class TestSiteRootPathsCache(TestCase):
|
|||
|
||||
# Check url
|
||||
self.assertEqual(homepage.url, '/')
|
||||
|
||||
|
||||
class TestResolveModelString(TestCase):
|
||||
def test_resolve_from_string(self):
|
||||
model = resolve_model_string('wagtailcore.Page')
|
||||
|
||||
self.assertEqual(model, Page)
|
||||
|
||||
def test_resolve_from_string_with_default_app(self):
|
||||
model = resolve_model_string('Page', default_app='wagtailcore')
|
||||
|
||||
self.assertEqual(model, Page)
|
||||
|
||||
def test_resolve_from_string_with_different_default_app(self):
|
||||
model = resolve_model_string('wagtailcore.Page', default_app='wagtailadmin')
|
||||
|
||||
self.assertEqual(model, Page)
|
||||
|
||||
def test_resolve_from_class(self):
|
||||
model = resolve_model_string(Page)
|
||||
|
||||
self.assertEqual(model, Page)
|
||||
|
||||
def test_resolve_from_string_invalid(self):
|
||||
self.assertRaises(ValueError, resolve_model_string, 'wagtail.wagtailcore.Page')
|
||||
|
||||
def test_resolve_from_string_with_incorrect_default_app(self):
|
||||
self.assertRaises(LookupError, resolve_model_string, 'Page', default_app='wagtailadmin')
|
||||
|
||||
def test_resolve_from_string_with_no_default_app(self):
|
||||
self.assertRaises(ValueError, resolve_model_string, 'Page')
|
||||
|
||||
@unittest.expectedFailure # Raising LookupError instead
|
||||
def test_resolve_from_class_that_isnt_a_model(self):
|
||||
self.assertRaises(ValueError, resolve_model_string, object)
|
||||
|
||||
@unittest.expectedFailure # Raising LookupError instead
|
||||
def test_resolve_from_bad_type(self):
|
||||
self.assertRaises(ValueError, resolve_model_string, resolve_model_string)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
import re
|
||||
from django.db.models import Model, get_model
|
||||
from six import string_types
|
||||
|
||||
from django.db.models import Model
|
||||
from django.apps import apps
|
||||
|
||||
|
||||
def camelcase_to_underscore(str):
|
||||
# http://djangosnippets.org/snippets/585/
|
||||
|
|
@ -26,10 +28,7 @@ def resolve_model_string(model_string, default_app=None):
|
|||
"should be in the form app_label.model_name".format(
|
||||
model_string), model_string)
|
||||
|
||||
model = get_model(app_label, model_name)
|
||||
if not model:
|
||||
raise LookupError("Can not resolve {0!r} into a model".format(model_string), model_string)
|
||||
return model
|
||||
return apps.get_model(app_label, model_name)
|
||||
|
||||
elif isinstance(model_string, type) and issubclass(model_string, Model):
|
||||
return model_string
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
from django.forms.util import ErrorList
|
||||
from django.forms.utils import ErrorList
|
||||
from django.utils.translation import ugettext as _
|
||||
|
||||
from wagtail.wagtailadmin.modal_workflow import render_modal_workflow
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
from collections import OrderedDict
|
||||
|
||||
import django.forms
|
||||
from django.utils.datastructures import SortedDict
|
||||
|
||||
|
||||
class BaseForm(django.forms.Form):
|
||||
|
|
@ -75,7 +76,7 @@ class FormBuilder(object):
|
|||
|
||||
@property
|
||||
def formfields(self):
|
||||
formfields = SortedDict()
|
||||
formfields = OrderedDict()
|
||||
|
||||
for field in self.fields:
|
||||
options = self.get_field_options(field)
|
||||
|
|
|
|||
Loading…
Reference in a new issue