Keep py3.X compatibility for urllib
Co-Authored-By: Swapnil Kulkarni <me@coolsvap.net> Partial-Bug:#1280105 Change-Id: I6d8a18d5818707baaeae93a04580c43872279706
This commit is contained in:
parent
2d03adb1f2
commit
0663d08fc1
@ -13,9 +13,8 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import urllib
|
||||
|
||||
from oslo_config import cfg
|
||||
from six.moves.urllib import parse as urllib_parse
|
||||
from webob import exc
|
||||
|
||||
from tacker.common import constants
|
||||
@ -57,7 +56,7 @@ def get_previous_link(request, items, id_key):
|
||||
marker = items[0][id_key]
|
||||
params['marker'] = marker
|
||||
params['page_reverse'] = True
|
||||
return "%s?%s" % (request.path_url, urllib.urlencode(params))
|
||||
return "%s?%s" % (request.path_url, urllib_parse.urlencode(params))
|
||||
|
||||
|
||||
def get_next_link(request, items, id_key):
|
||||
@ -67,7 +66,7 @@ def get_next_link(request, items, id_key):
|
||||
marker = items[-1][id_key]
|
||||
params['marker'] = marker
|
||||
params.pop('page_reverse', None)
|
||||
return "%s?%s" % (request.path_url, urllib.urlencode(params))
|
||||
return "%s?%s" % (request.path_url, urllib_parse.urlencode(params))
|
||||
|
||||
|
||||
def get_limit_and_marker(request):
|
||||
|
@ -58,10 +58,11 @@ as it allows particular rules to be explicitly disabled.
|
||||
|
||||
import abc
|
||||
import re
|
||||
import urllib
|
||||
|
||||
import six
|
||||
import urllib2
|
||||
|
||||
from six.moves.urllib import parse as urllib_parse
|
||||
from six.moves.urllib import request as urlrequest
|
||||
|
||||
from tacker.openstack.common.gettextutils import _
|
||||
from tacker.openstack.common import jsonutils
|
||||
@ -756,8 +757,8 @@ class HttpCheck(Check):
|
||||
url = ('http:' + self.match) % target
|
||||
data = {'target': jsonutils.dumps(target),
|
||||
'credentials': jsonutils.dumps(creds)}
|
||||
post_data = urllib.urlencode(data)
|
||||
f = urllib2.urlopen(url, post_data)
|
||||
post_data = urllib_parse.urlencode(data)
|
||||
f = urlrequest.urlopen(url, post_data)
|
||||
return f.read() == "True"
|
||||
|
||||
|
||||
|
@ -15,12 +15,12 @@
|
||||
|
||||
"""Test of Policy Engine For Tacker"""
|
||||
|
||||
import urllib2
|
||||
|
||||
import fixtures
|
||||
import mock
|
||||
import six
|
||||
|
||||
from six.moves.urllib import request as urlrequest
|
||||
|
||||
import tacker
|
||||
from tacker.api.v1 import attributes
|
||||
from tacker.common import exceptions
|
||||
@ -126,7 +126,7 @@ class PolicyTestCase(base.BaseTestCase):
|
||||
def fakeurlopen(url, post_data):
|
||||
return six.StringIO("True")
|
||||
|
||||
with mock.patch.object(urllib2, 'urlopen', new=fakeurlopen):
|
||||
with mock.patch.object(urlrequest, 'urlopen', new=fakeurlopen):
|
||||
action = "example:get_http"
|
||||
target = {}
|
||||
result = policy.enforce(self.context, action, target)
|
||||
@ -137,7 +137,7 @@ class PolicyTestCase(base.BaseTestCase):
|
||||
def fakeurlopen(url, post_data):
|
||||
return six.StringIO("False")
|
||||
|
||||
with mock.patch.object(urllib2, 'urlopen', new=fakeurlopen):
|
||||
with mock.patch.object(urlrequest, 'urlopen', new=fakeurlopen):
|
||||
action = "example:get_http"
|
||||
target = {}
|
||||
self.assertRaises(exceptions.PolicyNotAuthorized, policy.enforce,
|
||||
|
@ -12,9 +12,8 @@
|
||||
# under the License.
|
||||
#
|
||||
|
||||
import urllib2
|
||||
|
||||
import mock
|
||||
import six.moves.urllib.error as urlerr
|
||||
import testtools
|
||||
|
||||
from tacker.vm.monitor_drivers.http_ping import http_ping
|
||||
@ -26,7 +25,7 @@ class TestVNFMonitorHTTPPing(testtools.TestCase):
|
||||
super(TestVNFMonitorHTTPPing, self).setUp()
|
||||
self.monitor_http_ping = http_ping.VNFMonitorHTTPPing()
|
||||
|
||||
@mock.patch('urllib2.urlopen')
|
||||
@mock.patch('six.moves.urllib.request.urlopen')
|
||||
def test_monitor_call_for_success(self, mock_urlopen):
|
||||
test_device = {}
|
||||
test_kwargs = {
|
||||
@ -36,9 +35,9 @@ class TestVNFMonitorHTTPPing(testtools.TestCase):
|
||||
test_kwargs)
|
||||
mock_urlopen.assert_called_once_with('http://a.b.c.d:80', timeout=5)
|
||||
|
||||
@mock.patch('urllib2.urlopen')
|
||||
@mock.patch('six.moves.urllib.request.urlopen')
|
||||
def test_monitor_call_for_failure(self, mock_urlopen):
|
||||
mock_urlopen.side_effect = urllib2.URLError("MOCK Error")
|
||||
mock_urlopen.side_effect = urlerr.URLError("MOCK Error")
|
||||
test_device = {}
|
||||
test_kwargs = {
|
||||
'mgmt_ip': 'a.b.c.d'
|
||||
|
@ -12,9 +12,9 @@
|
||||
# under the License.
|
||||
#
|
||||
|
||||
import urllib2
|
||||
|
||||
from oslo_config import cfg
|
||||
import six.moves.urllib.error as urlerr
|
||||
import six.moves.urllib.request as urlreq
|
||||
|
||||
from tacker.common import log
|
||||
from tacker.i18n import _LW
|
||||
@ -49,7 +49,7 @@ class VNFMonitorHTTPPing(abstract_driver.VNFMonitorAbstractDriver):
|
||||
return device.get('monitor_url', '')
|
||||
|
||||
def _is_pingable(self, mgmt_ip='', retry=5, timeout=5, port=80, **kwargs):
|
||||
"""Checks whether the server is reachable by using urllib2.
|
||||
"""Checks whether the server is reachable by using urllib.
|
||||
|
||||
Waits for connectivity for `timeout` seconds,
|
||||
and if connection refused, it will retry `retry`
|
||||
@ -63,9 +63,9 @@ class VNFMonitorHTTPPing(abstract_driver.VNFMonitorAbstractDriver):
|
||||
url = 'http://' + mgmt_ip + ':' + str(port)
|
||||
for retry_index in range(int(retry)):
|
||||
try:
|
||||
urllib2.urlopen(url, timeout=timeout)
|
||||
urlreq.urlopen(url, timeout=timeout)
|
||||
return True
|
||||
except urllib2.URLError:
|
||||
except urlerr.URLError:
|
||||
LOG.warning(_LW('Unable to reach to the url %s'), url)
|
||||
return 'failure'
|
||||
|
||||
|
@ -14,6 +14,7 @@ hacking<0.11,>=0.10.2
|
||||
mock>=1.2 # BSD
|
||||
python-subunit>=0.0.18 # Apache-2.0/BSD
|
||||
ordereddict # MIT
|
||||
six>=1.9.0 # MIT
|
||||
sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD
|
||||
oslotest>=1.10.0 # Apache-2.0
|
||||
tempest-lib>=0.14.0 # Apache-2.0
|
||||
|
Loading…
Reference in New Issue
Block a user