Python3: Do not compare NoneType and integers

In Python 2:
>>> None > 0
False

In Python 3:
>>> None > 0
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unorderable types: NoneType() > int()

This commit does not change the behaviour of the affected code, but fixes the
TypeError that is raised in Python 3.

Some tests have been added to the py34 section of tox.ini, but are currently
commented out: these are tests that work with this patch and a fixed version of
Routes.

Change-Id: Ia00a2ad90206853f78ed93cf540bce54baab00e7
Blueprint: neutron-python3
This commit is contained in:
Cyril Roelandt 2015-07-16 21:12:58 +00:00
parent eb9226214f
commit 9976048b60
2 changed files with 16 additions and 1 deletions

View File

@ -172,7 +172,7 @@ class TypeManager(stevedore.named.NamedExtensionManager):
def _add_network_segment(self, session, network_id, segment, mtu,
segment_index=0):
db.add_network_segment(session, network_id, segment, segment_index)
if segment.get(api.MTU) > 0:
if segment.get(api.MTU, 0) > 0:
mtu.append(segment[api.MTU])
def create_network_segments(self, context, network, tenant_id):

15
tox.ini
View File

@ -104,8 +104,11 @@ commands = sphinx-build -W -b html doc/source doc/build/html
[testenv:py34]
commands = python -m testtools.run \
neutron.tests.unit.services.metering.drivers.test_iptables \
neutron.tests.unit.services.metering.agents.test_metering_agent \
neutron.tests.unit.services.l3_router.test_l3_apic \
neutron.tests.unit.plugins.ml2.drivers.mech_sriov.agent.test_sriov_nic_agent \
neutron.tests.unit.plugins.ml2.drivers.mech_sriov.agent.test_eswitch_manager \
neutron.tests.unit.plugins.ml2.drivers.mech_sriov.agent.common.test_config \
neutron.tests.unit.plugins.ml2.drivers.mech_sriov.agent.test_pci_lib \
neutron.tests.unit.plugins.ml2.drivers.openvswitch.agent.ovs_test_base \
neutron.tests.unit.plugins.ml2.drivers.openvswitch.agent.openflow.ovs_ofctl.test_br_phys \
@ -120,10 +123,13 @@ commands = python -m testtools.run \
neutron.tests.unit.plugins.ibm.test_sdnve_api \
neutron.tests.unit.plugins.ml2.test_db \
neutron.tests.unit.plugins.ml2.test_driver_context \
# neutron.tests.unit.plugins.ml2.test_port_binding \
# neutron.tests.unit.plugins.ml2.test_extension_driver_api \
neutron.tests.unit.plugins.ml2.test_rpc \
neutron.tests.unit.plugins.ml2.drivers.mlnx.test_mech_mlnx \
neutron.tests.unit.plugins.ml2.drivers.openvswitch.mech_driver.test_mech_openvswitch \
neutron.tests.unit.plugins.ml2.drivers.linuxbridge.mech_driver.test_mech_linuxbridge \
neutron.tests.unit.plugins.ml2.drivers.linuxbridge.agent.test_linuxbridge_neutron_agent \
neutron.tests.unit.plugins.ml2.drivers.base_type_tunnel \
# neutron.tests.unit.plugins.ml2.drivers.opendaylight.test_driver \
neutron.tests.unit.plugins.ml2.drivers.ext_test \
@ -144,11 +150,14 @@ commands = python -m testtools.run \
neutron.tests.unit.plugins.ml2.drivers.l2pop.rpc_manager.l2population_rpc_base \
neutron.tests.unit.plugins.ml2.extensions.fake_extension \
neutron.tests.unit.plugins.ml2.drivers.l2pop.rpc_manager.test_l2population_rpc \
# neutron.tests.unit.plugins.ml2.drivers.l2pop.test_mech_driver \
# neutron.tests.unit.plugins.cisco.n1kv.test_n1kv_db \
neutron.tests.unit.plugins.cisco.n1kv.fake_client \
neutron.tests.unit.plugins.cisco.test_network_db \
neutron.tests.unit.scheduler.test_dhcp_agent_scheduler \
neutron.tests.unit.db.test_ipam_backend_mixin \
neutron.tests.unit.db.test_l3_dvr_db \
# neutron.tests.unit.db.test_ipam_pluggable_backend \
neutron.tests.unit.db.test_migration \
neutron.tests.unit.db.test_agents_db \
neutron.tests.unit.db.test_dvr_mac_db \
@ -174,6 +183,7 @@ commands = python -m testtools.run \
neutron.tests.unit.agent.l3.test_router_processing_queue \
neutron.tests.unit.agent.l3.test_namespace_manager \
neutron.tests.unit.agent.l3.test_dvr_fip_ns \
neutron.tests.unit.agent.ovsdb.native.test_helpers \
neutron.tests.unit.agent.common.test_config \
neutron.tests.unit.agent.common.test_polling \
neutron.tests.unit.agent.common.test_utils \
@ -195,6 +205,7 @@ commands = python -m testtools.run \
neutron.tests.unit.agent.linux.test_ip_link_support \
neutron.tests.unit.agent.linux.test_interface \
neutron.tests.unit.test_manager \
neutron.tests.unit.test_service \
neutron.tests.unit.test_auth \
neutron.tests.unit.test_policy \
neutron.tests.unit.extensions.v2attributes \
@ -204,7 +215,9 @@ commands = python -m testtools.run \
neutron.tests.unit.extensions.base \
neutron.tests.unit.extensions.foxinsocks \
neutron.tests.unit.extensions.extensionattribute \
# neutron.tests.unit.extensions.test_servicetype \
# neutron.tests.unit.extensions.test_portsecurity \
# neutron.tests.unit.extensions.test_providernet \
neutron.tests.unit.callbacks.test_manager \
neutron.tests.unit.hacking.test_checks \
neutron.tests.unit.common.test_config \
@ -216,6 +229,8 @@ commands = python -m testtools.run \
neutron.tests.unit.ipam.drivers.neutrondb_ipam.test_db_api \
neutron.tests.unit.ipam.drivers.neutrondb_ipam.test_driver \
neutron.tests.unit.ipam.test_subnet_alloc \
neutron.tests.unit.ipam.test_utils \
neutron.tests.unit.ipam.test_requests \
neutron.tests.unit.notifiers.test_nova \
neutron.tests.unit.notifiers.test_batch_notifier