Port run_tests.py to Python 3

* Replace urllib import with six.moves.urllib
* gettext.install() doesn't require the unicode parameter on Python 3
* tox.ini: add py34 testenv

Tests don't pass. It's the very first step to start the working on
porting Trove to Python 3.

Partially implements: blueprint trove-python3
Change-Id: Ide9ec1d2aee84905c03cacdb3ea35d0dcbf01596
This commit is contained in:
Victor Stinner 2015-09-21 16:11:55 +02:00 committed by Petr Malik
parent f8f89d46fd
commit 41f2606435
2 changed files with 8 additions and 4 deletions

View File

@ -21,11 +21,12 @@ import gettext
import os
import sys
import traceback
import urllib
import eventlet
from oslo_log import log as logging
import proboscis
import six
from six.moves import urllib
import wsgi_intercept
from wsgi_intercept.httplib2_intercept import install as wsgi_install
@ -56,7 +57,10 @@ def add_support_for_localization():
if os.path.exists(os.path.join(possible_topdir, 'nova', '__init__.py')):
sys.path.insert(0, possible_topdir)
gettext.install('nova', unicode=1)
if six.PY2:
gettext.install('nova', unicode=1)
else:
gettext.install('nova')
def initialize_trove(config_file):
@ -146,7 +150,7 @@ def initialize_fakes(app):
def call_back(env, start_response):
path_info = env.get('PATH_INFO')
if path_info:
env['PATH_INFO'] = urllib.unquote(path_info)
env['PATH_INFO'] = urllib.parse.unquote(path_info)
return app.__call__(env, start_response)
return call_back

View File

@ -1,5 +1,5 @@
[tox]
envlist = py27,pep8,checkbuild,checklinks
envlist = py34,py27,pep8,checkbuild,checklinks
minversion = 1.6
skipsdist = True