summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Grainger <tom.grainger@procensus.com>2016-05-19 17:46:34 +0100
committerThomas Grainger <tom.grainger@procensus.com>2016-05-19 17:59:34 +0100
commite0b9cb2a8c9c69822526908aa2841adc7f1322bb (patch)
tree3f093a9af259c02e748cba31cd8416ed6fface8c
parent26f2b696ab61a6dd41a19c9730f85a6b572089b7 (diff)
downloaddocker-py-e0b9cb2a8c9c69822526908aa2841adc7f1322bb.tar.gz
support Python 3.5
Signed-off-by: Thomas Grainger <tom.grainger@procensus.com>
-rw-r--r--.travis.yml3
-rw-r--r--docker/utils/utils.py10
-rw-r--r--setup.py4
-rw-r--r--test-requirements.txt4
-rw-r--r--tests/unit/utils_test.py70
-rw-r--r--tox.ini4
6 files changed, 31 insertions, 64 deletions
diff --git a/.travis.yml b/.travis.yml
index abbb578..fb62a34 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,12 +1,13 @@
sudo: false
language: python
python:
- - "2.7"
+ - "3.5"
env:
- TOX_ENV=py26
- TOX_ENV=py27
- TOX_ENV=py33
- TOX_ENV=py34
+ - TOX_ENV=py35
- TOX_ENV=flake8
install:
- pip install tox
diff --git a/docker/utils/utils.py b/docker/utils/utils.py
index 98cbd61..caa9831 100644
--- a/docker/utils/utils.py
+++ b/docker/utils/utils.py
@@ -546,12 +546,6 @@ def datetime_to_timestamp(dt):
return delta.seconds + delta.days * 24 * 3600
-def longint(n):
- if six.PY3:
- return int(n)
- return long(n)
-
-
def parse_bytes(s):
if isinstance(s, six.integer_types + (float,)):
return s
@@ -574,7 +568,7 @@ def parse_bytes(s):
if suffix in units.keys() or suffix.isdigit():
try:
- digits = longint(digits_part)
+ digits = int(digits_part)
except ValueError:
raise errors.DockerException(
'Failed converting the string value for memory ({0}) to'
@@ -582,7 +576,7 @@ def parse_bytes(s):
)
# Reconvert to long for the final result
- s = longint(digits * units[suffix])
+ s = int(digits * units[suffix])
else:
raise errors.DockerException(
'The specified value for memory ({0}) should specify the'
diff --git a/setup.py b/setup.py
index fac5129..8542711 100644
--- a/setup.py
+++ b/setup.py
@@ -16,6 +16,7 @@ extras_require = {
':python_version < "3.3"': 'ipaddress >= 1.0.16',
}
+version = None
exec(open('docker/version.py').read())
with open('./test-requirements.txt') as test_reqs_txt:
@@ -42,10 +43,13 @@ setup(
'Intended Audience :: Developers',
'Operating System :: OS Independent',
'Programming Language :: Python',
+ 'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.6',
'Programming Language :: Python :: 2.7',
+ 'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.3',
'Programming Language :: Python :: 3.4',
+ 'Programming Language :: Python :: 3.5',
'Topic :: Utilities',
'License :: OSI Approved :: Apache Software License',
],
diff --git a/test-requirements.txt b/test-requirements.txt
index be49988..460db10 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -1,5 +1,5 @@
mock==1.0.1
-pytest==2.7.2
+pytest==2.9.1
coverage==3.7.1
pytest-cov==2.1.0
-flake8==2.4.1 \ No newline at end of file
+flake8==2.4.1
diff --git a/tests/unit/utils_test.py b/tests/unit/utils_test.py
index 47c43ee..ef927d3 100644
--- a/tests/unit/utils_test.py
+++ b/tests/unit/utils_test.py
@@ -299,56 +299,30 @@ class ConverVolumeBindsTest(base.BaseTestCase):
self.assertEqual(convert_volume_binds(data), ['/mnt/vol1:/data:rw'])
def test_convert_volume_binds_unicode_bytes_input(self):
- if six.PY2:
- expected = [unicode('/mnt/지연:/unicode/박:rw', 'utf-8')]
-
- data = {
- '/mnt/지연': {
- 'bind': '/unicode/박',
- 'mode': 'rw'
- }
- }
- self.assertEqual(
- convert_volume_binds(data), expected
- )
- else:
- expected = ['/mnt/지연:/unicode/박:rw']
+ expected = [u'/mnt/지연:/unicode/박:rw']
- data = {
- bytes('/mnt/지연', 'utf-8'): {
- 'bind': bytes('/unicode/박', 'utf-8'),
- 'mode': 'rw'
- }
+ data = {
+ u'/mnt/지연'.encode('utf-8'): {
+ 'bind': u'/unicode/박'.encode('utf-8'),
+ 'mode': 'rw'
}
- self.assertEqual(
- convert_volume_binds(data), expected
- )
+ }
+ self.assertEqual(
+ convert_volume_binds(data), expected
+ )
def test_convert_volume_binds_unicode_unicode_input(self):
- if six.PY2:
- expected = [unicode('/mnt/지연:/unicode/박:rw', 'utf-8')]
-
- data = {
- unicode('/mnt/지연', 'utf-8'): {
- 'bind': unicode('/unicode/박', 'utf-8'),
- 'mode': 'rw'
- }
- }
- self.assertEqual(
- convert_volume_binds(data), expected
- )
- else:
- expected = ['/mnt/지연:/unicode/박:rw']
+ expected = [u'/mnt/지연:/unicode/박:rw']
- data = {
- '/mnt/지연': {
- 'bind': '/unicode/박',
- 'mode': 'rw'
- }
+ data = {
+ u'/mnt/지연': {
+ 'bind': u'/unicode/박',
+ 'mode': 'rw'
}
- self.assertEqual(
- convert_volume_binds(data), expected
- )
+ }
+ self.assertEqual(
+ convert_volume_binds(data), expected
+ )
class ParseEnvFileTest(base.BaseTestCase):
@@ -612,13 +586,7 @@ class UtilsTest(base.BaseTestCase):
class SplitCommandTest(base.BaseTestCase):
def test_split_command_with_unicode(self):
- if six.PY2:
- self.assertEqual(
- split_command(unicode('echo μμ', 'utf-8')),
- ['echo', 'μμ']
- )
- else:
- self.assertEqual(split_command('echo μμ'), ['echo', 'μμ'])
+ self.assertEqual(split_command(u'echo μμ'), ['echo', 'μμ'])
@pytest.mark.skipif(six.PY3, reason="shlex doesn't support bytes in py3")
def test_split_command_with_bytes(self):
diff --git a/tox.ini b/tox.ini
index 40e46fa..be4508e 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = py26, py27, py33, py34, flake8
+envlist = py26, py27, py33, py34, py35, flake8
skipsdist=True
[testenv]
@@ -11,5 +11,5 @@ deps =
-r{toxinidir}/requirements.txt
[testenv:flake8]
-commands = flake8 docker tests
+commands = flake8 docker tests setup.py
deps = flake8