Skip to content

Commit

Permalink
Merge 084fe7d into 5dcdb1b
Browse files Browse the repository at this point in the history
  • Loading branch information
jeromelebleu committed Jul 2, 2018
2 parents 5dcdb1b + 084fe7d commit 4fbe58d
Show file tree
Hide file tree
Showing 7 changed files with 51 additions and 53 deletions.
28 changes: 16 additions & 12 deletions setup.py
Expand Up @@ -12,6 +12,7 @@
def read(fname):
return open(os.path.join(os.path.dirname(__file__), fname)).read()


setup(
name='django-betterforms',
version=version,
Expand All @@ -20,25 +21,28 @@ def read(fname):
url="https://django-betterforms.readthedocs.org/en/latest/",
author="Fusionbox",
author_email='programmers@fusionbox.com',
packages=[package for package in find_packages() if package.startswith('betterforms')],
install_requires=[
'Django>=1.4',
'six',
],
tests_require=[
'mock>=1.0.1',
],
packages=[package for package in find_packages()
if package.startswith('betterforms')],
install_requires=['Django>=1.8'],
zip_safe=False,
include_package_data=True,
classifiers=[
'Development Status :: 4 - Beta',
'Development Status :: 5 - Production/Stable',
'Framework :: Django',
'Framework :: Django :: 1.8',
'Framework :: Django :: 1.9',
'Framework :: Django :: 1.10',
'Framework :: Django :: 1.11',
'Framework :: Django :: 2.0',
'Intended Audience :: Developers',
'License :: OSI Approved :: BSD License',
'Topic :: Internet :: WWW/HTTP',
'Programming Language :: Python',
'Programming Language :: Python :: 2.6',
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3.3',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Topic :: Internet :: WWW/HTTP',
],
)
9 changes: 6 additions & 3 deletions tests/models.py
Expand Up @@ -7,8 +7,9 @@ class User(models.Model):


class Profile(models.Model):
user = models.OneToOneField('User', related_name='profile')

user = models.OneToOneField(
User, on_delete=models.CASCADE, related_name='profile',
)
display_name = models.CharField(max_length=255, blank=True)


Expand All @@ -27,5 +28,7 @@ class Book(models.Model):


class BookImage(models.Model):
book = models.ForeignKey(Book, related_name='images')
book = models.ForeignKey(
Book, on_delete=models.CASCADE, related_name='images',
)
name = models.CharField(max_length=255)
5 changes: 5 additions & 0 deletions tests/requirements.txt
@@ -0,0 +1,5 @@
django-formtools
pytest
pytest-django
pytest-cov
mock >=1.0.1
2 changes: 1 addition & 1 deletion tests/settings.py
Expand Up @@ -5,7 +5,7 @@

PROJECT_PATH = os.path.abspath(os.path.dirname(__file__))

MIDDLEWARE_CLASSES = (
MIDDLEWARE = MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
# We need the SessionMiddleware for the WizardView support tests in Django >= 1.7
'django.contrib.sessions.middleware.SessionMiddleware',
Expand Down
17 changes: 6 additions & 11 deletions tests/tests.py
@@ -1,10 +1,12 @@
from collections import OrderedDict

import django
from django.test import TestCase
from django.test.client import RequestFactory
from django.views.generic import CreateView
from django.core import urlresolvers
try:
from django.urls import reverse
except ImportError:
from django.core.urlresolvers import reverse
from django.utils.encoding import force_text

from .models import User, Profile, Badge, Book
Expand Down Expand Up @@ -108,14 +110,7 @@ def test_is_multipart(self):

def test_media(self):
form = NeedsFileField()
static_prefix = ""
if django.VERSION < (1, 10):
static_prefix = "/static/"
self.assertEqual(form.media._js, [
static_prefix + 'admin/js/calendar.js',
static_prefix + 'admin/js/admin/DateTimeShortcuts.js',
'test.js',
])
self.assertIn('test.js', form.media._js)

def test_is_bound(self):
form = ErrorMultiForm()
Expand Down Expand Up @@ -169,7 +164,7 @@ def test_handles_none_initial_value(self):
UserProfileMultiForm(initial=None)

def test_works_with_wizard_view(self):
url = urlresolvers.reverse('test_wizard')
url = reverse('test_wizard')
self.client.get(url)

response = self.client.post(url, {
Expand Down
16 changes: 4 additions & 12 deletions tests/urls.py
@@ -1,21 +1,11 @@
import django
from django.conf.urls import url

if django.VERSION >= (1, 8):
from formtools.wizard.views import SessionWizardView
else:
from django.contrib.formtools.wizard.views import SessionWizardView
from formtools.wizard.views import SessionWizardView

from .forms import Step1Form, Step2Form


class TestWizardView(SessionWizardView):
def get_context_data(self, **kwargs):
kwargs = super(TestWizardView, self).get_context_data(**kwargs)
# Django < 1.5 does not set the view object in the context
kwargs['view'] = self
return kwargs

def done(self, form_list, **kwargs):
context = {
'form_list': form_list,
Expand All @@ -24,5 +14,7 @@ def done(self, form_list, **kwargs):


urlpatterns = [
url(r'^test-wizard-view/$', TestWizardView.as_view([Step1Form, Step2Form]), name='test_wizard'),
url(r'^test-wizard-view/$',
TestWizardView.as_view([Step1Form, Step2Form]),
name='test_wizard'),
]
27 changes: 13 additions & 14 deletions tox.ini
@@ -1,24 +1,23 @@
[tox]
envlist=
{py27,py34,py35}-{dj17,dj18,dj19,dj110,djdev}
envlist =
{py27,py34}-dj{18,19,110}
{py27,py34,py35,py36}-dj111
{py34,py35,py36}-dj20
{py35,py36}-djdev

[testenv]
commands=
make {posargs:test}
basepython=
basepython =
py27: python2.7
py34: python3.4
py35: python3.5
deps=
dj17: Django>=1.7,<1.8
py36: python3.6
commands = make {posargs:test}
deps =
dj18: Django>=1.8,<1.9
dj19: Django>=1.9,<1.10
dj110: Django>=1.10,<1.11
dj111: Django>=1.11,<2.0
dj20: Django>=2.0,<2.1
djdev: https://github.com/django/django/archive/master.tar.gz
django-formtools
pytest
pytest-django
pytest-cov
mock
whitelist_externals=
make
-r{toxinidir}/tests/requirements.txt
whitelist_externals = make

0 comments on commit 4fbe58d

Please sign in to comment.