Skip to content

Commit

Permalink
Merge pull request #3 from zopefoundation/issue2
Browse files Browse the repository at this point in the history
Add Python 3.7 and fix tests.
  • Loading branch information
jamadden committed Oct 22, 2018
2 parents 50e63e4 + 391aae2 commit 6db77c0
Show file tree
Hide file tree
Showing 11 changed files with 81 additions and 40 deletions.
17 changes: 12 additions & 5 deletions .travis.yml
@@ -1,11 +1,18 @@
language: python
sudo: false
python:
- 2.7
- pypy-5.4.1
- 3.4
- 3.5
- 3.6
- 2.7
- 3.4
- 3.5
- 3.6
- pypy
- pypy3
matrix:
include:
- python: "3.7"
dist: xenial
sudo: true

install:
- pip install -U pip setuptools
- pip install -U coverage coveralls
Expand Down
4 changes: 2 additions & 2 deletions CHANGES.rst
Expand Up @@ -2,10 +2,10 @@
CHANGES
=========

4.0.1 (unreleased)
4.1.0 (unreleased)
==================

- Nothing changed yet.
- Add support for Python 3.7.


4.0.0 (2017-05-05)
Expand Down
5 changes: 3 additions & 2 deletions setup.py
Expand Up @@ -20,7 +20,7 @@
"""
from setuptools import setup, find_packages

version = '4.0.1.dev0'
version = '4.1.0.dev0'

def _read(fname):
with open(fname, 'r') as f:
Expand Down Expand Up @@ -60,7 +60,7 @@ def _read(fname):

setup(name='zope.app.publisher',
version=version,
url='http://github.com/zopefoundation/zope.app.publisher/',
url='https://github.com/zopefoundation/zope.app.publisher/',
author='Zope Corporation and Contributors',
author_email='zope-dev@zope.org',
classifiers=[
Expand All @@ -75,6 +75,7 @@ def _read(fname):
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: PyPy',
'Natural Language :: English',
Expand Down
4 changes: 2 additions & 2 deletions src/zope/app/publisher/tests/test_fieldconverters.py
Expand Up @@ -25,7 +25,7 @@ class TestFieldConverters(unittest.TestCase):

def test_field2date_dateonly(self, value="2003/05/04"):
dt = field2date_via_datetimeutils(value)
self.failUnless(isinstance(dt, datetime))
self.assertTrue(isinstance(dt, datetime))
self.assertEqual(dt.year, 2003)
self.assertEqual(dt.month, 5)
self.assertEqual(dt.day, 4)
Expand All @@ -41,7 +41,7 @@ def test_field2date_reads(self):

def test_field2date_timestamp(self):
dt = field2date_via_datetimeutils('2003/05/04 19:26:54')
self.failUnless(isinstance(dt, datetime))
self.assertTrue(isinstance(dt, datetime))
self.assertEqual(dt.year, 2003)
self.assertEqual(dt.month, 5)
self.assertEqual(dt.day, 4)
Expand Down
6 changes: 5 additions & 1 deletion src/zope/app/publisher/xmlrpc/tests/__init__.py
Expand Up @@ -70,7 +70,11 @@ def request(self, host, handler, request_body, verbose=0):

assert errcode == 200

content = 'HTTP/1.0 ' + errmsg + '\n\n' + response.getBody()
body = response.getBody()
if not isinstance(body, str):
# Python 3
body = body.decode("utf-8")
content = 'HTTP/1.0 ' + errmsg + '\n\n' + body

res = httplib.HTTPResponse(FakeSocket(content))
res.begin()
Expand Down
35 changes: 32 additions & 3 deletions src/zope/app/publisher/xmlrpc/tests/test_directives.py
Expand Up @@ -17,9 +17,10 @@
import unittest

from zope import component
from zope.interface import Interface
from zope.interface import directlyProvides
from zope.configuration import xmlconfig
from zope.configuration.exceptions import ConfigurationError
from zope.component.testfiles.views import Request, IC, V1

from zope.testing.cleanup import CleanUp as PlacelessSetup
from zope.security.proxy import ProxyFactory
Expand All @@ -29,8 +30,36 @@
from zope.interface import implementer


class IV(Interface):
def index():
"A method"

class IC(Interface):
pass

@implementer(IV)
class V1(object):

def __init__(self, context, request):
self.context = context
self.request = request

def index(self):
return 'V1 here'

def action(self):
return 'done'


class Request(object):

def __init__(self, type):
directlyProvides(self, type)


request = Request(IXMLRPCRequest)


@implementer(IC)
class Ob(object):
pass
Expand All @@ -44,8 +73,8 @@ def testView(self):
component.queryMultiAdapter((ob, request), name='test'), None)
xmlconfig.file("xmlrpc.zcml", xmlrpc.tests)
view = component.queryMultiAdapter((ob, request), name='test')
self.assert_(V1 in view.__class__.__bases__)
self.assert_(xmlrpc.MethodPublisher in view.__class__.__bases__)
self.assertTrue(V1 in view.__class__.__bases__)
self.assertTrue(xmlrpc.MethodPublisher in view.__class__.__bases__)

def testInterfaceProtectedView(self):
xmlconfig.file("xmlrpc.zcml", xmlrpc.tests)
Expand Down
36 changes: 18 additions & 18 deletions src/zope/app/publisher/xmlrpc/tests/xmlrpc.zcml
Expand Up @@ -6,55 +6,55 @@

<xmlrpc:view
name="test"
class="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
class="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
permission="zope.Public"
/>

<xmlrpc:view
name="test2"
class="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
class="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
permission="zope.Public"
interface="zope.component.testfiles.views.IV"
interface="zope.app.publisher.xmlrpc.tests.test_directives.IV"
/>

<xmlrpc:view
name="test3"
class="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
class="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
permission="zope.Public"
methods="action" />

<xmlrpc:view
name="test4"
class="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
class="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
permission="zope.Public"
methods="action"
interface="zope.component.testfiles.views.IV" />
interface="zope.app.publisher.xmlrpc.tests.test_directives.IV" />

<xmlrpc:view
name="test5"
class="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
class="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
permission="zope.Public"
methods="action index"
interface="zope.component.testfiles.views.IV" />
interface="zope.app.publisher.xmlrpc.tests.test_directives.IV" />


<xmlrpc:view
name="test6"
for="zope.component.testfiles.views.IC"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
permission="zope.Public"
methods="action index"
interface="zope.component.testfiles.views.IV" />
interface="zope.app.publisher.xmlrpc.tests.test_directives.IV" />


<xmlrpc:view
class="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
interface="zope.component.testfiles.views.IV"
class="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
interface="zope.app.publisher.xmlrpc.tests.test_directives.IV"
methods="action"
permission="zope.Public"
/>
Expand Down
4 changes: 2 additions & 2 deletions src/zope/app/publisher/xmlrpc/tests/xmlrpc_error.zcml
Expand Up @@ -6,8 +6,8 @@

<xmlrpc:view
name="test"
factory="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
factory="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
methods="action index"
permission="zope.Public" />

Expand Down
4 changes: 2 additions & 2 deletions src/zope/app/publisher/xmlrpc/tests/xmlrpc_nonamenoperm.zcml
Expand Up @@ -5,8 +5,8 @@
<include package="zope.app.publisher.xmlrpc" file="meta.zcml"/>

<xmlrpc:view
class="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
class="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
/>

</configure>
4 changes: 2 additions & 2 deletions src/zope/app/publisher/xmlrpc/tests/xmlrpc_noperm.zcml
Expand Up @@ -6,8 +6,8 @@

<xmlrpc:view
name="index"
class="zope.component.testfiles.views.V1"
for="zope.component.testfiles.views.IC"
class="zope.app.publisher.xmlrpc.tests.test_directives.V1"
for="zope.app.publisher.xmlrpc.tests.test_directives.IC"
/>

</configure>
2 changes: 1 addition & 1 deletion tox.ini
@@ -1,6 +1,6 @@
[tox]
envlist =
py27, pypy, py34, py35, py36
py27, pypy, py34, py35, py36, py37

[testenv]
commands =
Expand Down

0 comments on commit 6db77c0

Please sign in to comment.