9976048b60
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
256 lines
11 KiB
INI
256 lines
11 KiB
INI
[tox]
|
||
envlist = docs,py27,py34,pep8
|
||
minversion = 1.8
|
||
skipsdist = True
|
||
|
||
[testenv]
|
||
setenv = VIRTUAL_ENV={envdir}
|
||
OS_TEST_DBAPI_ADMIN_CONNECTION=mysql+pymysql://openstack_citest:openstack_citest@localhost/;postgresql://openstack_citest:openstack_citest@localhost/postgres;sqlite://
|
||
passenv = TRACE_FAILONLY
|
||
usedevelop = True
|
||
install_command = pip install -U {opts} {packages}
|
||
deps = -r{toxinidir}/requirements.txt
|
||
-r{toxinidir}/test-requirements.txt
|
||
whitelist_externals = sh
|
||
commands =
|
||
dsvm-functional: {toxinidir}/tools/deploy_rootwrap.sh {toxinidir} {envdir}/etc {envdir}/bin
|
||
ostestr --regex '{posargs}'
|
||
# there is also secret magic in ostestr which lets you run in a fail only
|
||
# mode. To do this define the TRACE_FAILONLY environmental variable.
|
||
|
||
[testenv:api]
|
||
basepython = python2.7
|
||
setenv = {[testenv]setenv}
|
||
OS_TEST_PATH=./neutron/tests/api
|
||
TEMPEST_CONFIG_DIR={env:TEMPEST_CONFIG_DIR:/opt/stack/tempest/etc}
|
||
OS_TEST_API_WITH_REST=1
|
||
|
||
[testenv:common]
|
||
# Fake job to define environment variables shared between dsvm/non-dsvm jobs
|
||
setenv = OS_TEST_TIMEOUT=180
|
||
commands = false
|
||
|
||
[testenv:dsvm]
|
||
# Fake job to define environment variables shared between dsvm jobs
|
||
setenv = OS_SUDO_TESTING=1
|
||
OS_ROOTWRAP_CMD=sudo {envdir}/bin/neutron-rootwrap {envdir}/etc/neutron/rootwrap.conf
|
||
OS_ROOTWRAP_DAEMON_CMD=sudo {envdir}/bin/neutron-rootwrap-daemon {envdir}/etc/neutron/rootwrap.conf
|
||
OS_FAIL_ON_MISSING_DEPS=1
|
||
commands = false
|
||
|
||
[testenv:functional]
|
||
basepython = python2.7
|
||
setenv = {[testenv]setenv}
|
||
{[testenv:common]setenv}
|
||
OS_TEST_PATH=./neutron/tests/functional
|
||
deps =
|
||
{[testenv]deps}
|
||
-r{toxinidir}/neutron/tests/functional/requirements.txt
|
||
|
||
[testenv:dsvm-functional]
|
||
basepython = python2.7
|
||
setenv = {[testenv:functional]setenv}
|
||
{[testenv:dsvm]setenv}
|
||
sitepackages=True
|
||
deps =
|
||
{[testenv:functional]deps}
|
||
|
||
[testenv:fullstack]
|
||
setenv = {[testenv]setenv}
|
||
{[testenv:common]setenv}
|
||
OS_TEST_PATH=./neutron/tests/fullstack
|
||
deps =
|
||
{[testenv]deps}
|
||
-r{toxinidir}/neutron/tests/functional/requirements.txt
|
||
|
||
[testenv:dsvm-fullstack]
|
||
setenv = {[testenv:fullstack]setenv}
|
||
{[testenv:dsvm]setenv}
|
||
sitepackages=True
|
||
deps =
|
||
{[testenv:functional]deps}
|
||
|
||
[tox:jenkins]
|
||
sitepackages = True
|
||
downloadcache = ~/cache/pip
|
||
|
||
[testenv:pep8]
|
||
basepython = python2.7
|
||
deps =
|
||
{[testenv]deps}
|
||
commands=
|
||
# If it is easier to add a check via a shell script, consider adding it in this file
|
||
sh ./tools/misc-sanity-checks.sh
|
||
{toxinidir}/tools/check_unit_test_structure.sh
|
||
# Checks for coding and style guidelines
|
||
flake8
|
||
sh ./tools/coding-checks.sh --pylint '{posargs}'
|
||
neutron-db-manage --config-file neutron/tests/etc/neutron.conf check_migration
|
||
whitelist_externals =
|
||
sh
|
||
bash
|
||
|
||
[testenv:cover]
|
||
basepython = python2.7
|
||
commands =
|
||
python setup.py testr --coverage --testr-args='{posargs}'
|
||
|
||
[testenv:venv]
|
||
commands = {posargs}
|
||
|
||
[testenv:docs]
|
||
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 \
|
||
neutron.tests.unit.plugins.ml2.drivers.openvswitch.agent.openflow.ovs_ofctl.test_br_int \
|
||
neutron.tests.unit.plugins.ml2.drivers.openvswitch.agent.openflow.ovs_ofctl.test_br_tun \
|
||
# neutron.tests.unit.plugins.brocade.test_brocade_db \
|
||
neutron.tests.unit.plugins.brocade.test_brocade_vlan \
|
||
neutron.tests.unit.plugins.oneconvergence.test_nvsd_agent \
|
||
neutron.tests.unit.plugins.oneconvergence.test_plugin_helper \
|
||
neutron.tests.unit.plugins.oneconvergence.test_nvsdlib \
|
||
neutron.tests.unit.plugins.ibm.test_sdnve_agent \
|
||
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 \
|
||
neutron.tests.unit.plugins.ml2.drivers.mech_sriov.mech_driver.test_mech_sriov_nic_switch \
|
||
neutron.tests.unit.plugins.ml2.drivers.mech_fake_agent \
|
||
neutron.tests.unit.plugins.ml2.drivers.test_type_vxlan \
|
||
neutron.tests.unit.plugins.ml2.drivers.test_type_gre \
|
||
neutron.tests.unit.plugins.ml2.drivers.test_helpers \
|
||
neutron.tests.unit.plugins.ml2.drivers.arista.test_mechanism_arista \
|
||
neutron.tests.unit.plugins.ml2.drivers.test_type_local \
|
||
neutron.tests.unit.plugins.ml2.drivers.mechanism_logger \
|
||
neutron.tests.unit.plugins.ml2.drivers.cisco.apic.test_apic_sync \
|
||
neutron.tests.unit.plugins.ml2.drivers.cisco.apic.base \
|
||
neutron.tests.unit.plugins.ml2.drivers.cisco.apic.test_apic_topology \
|
||
neutron.tests.unit.plugins.ml2.drivers.test_type_flat \
|
||
neutron.tests.unit.plugins.ml2.drivers.test_type_vlan \
|
||
neutron.tests.unit.plugins.ml2.drivers.mechanism_test \
|
||
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 \
|
||
neutron.tests.unit.debug.test_commands \
|
||
neutron.tests.unit.tests.test_post_mortem_debug \
|
||
neutron.tests.unit.tests.test_base \
|
||
neutron.tests.unit.database_stubs \
|
||
neutron.tests.unit.dummy_plugin \
|
||
neutron.tests.unit.extension_stubs \
|
||
neutron.tests.unit.testlib_api \
|
||
neutron.tests.unit.api.test_api_common \
|
||
neutron.tests.unit.api.rpc.handlers.test_dhcp_rpc \
|
||
neutron.tests.unit.api.rpc.handlers.test_securitygroups_rpc \
|
||
neutron.tests.unit.api.rpc.handlers.test_dvr_rpc \
|
||
neutron.tests.unit.api.rpc.agentnotifiers.test_dhcp_rpc_agent_api \
|
||
neutron.tests.unit.agent.metadata.test_driver \
|
||
neutron.tests.unit.agent.test_rpc \
|
||
# neutron.tests.unit.agent.test_securitygroups_rpc \
|
||
neutron.tests.unit.agent.l3.test_link_local_allocator \
|
||
neutron.tests.unit.agent.l3.test_ha_router \
|
||
neutron.tests.unit.agent.l3.test_legacy_router \
|
||
neutron.tests.unit.agent.l3.test_router_info \
|
||
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 \
|
||
neutron.tests.unit.agent.linux.test_ip_lib \
|
||
neutron.tests.unit.agent.linux.test_keepalived \
|
||
neutron.tests.unit.agent.linux.test_daemon \
|
||
neutron.tests.unit.agent.linux.test_ipset_manager \
|
||
neutron.tests.unit.agent.linux.test_iptables_firewall \
|
||
neutron.tests.unit.agent.linux.test_ebtables_manager \
|
||
neutron.tests.unit.agent.linux.test_iptables_firewall \
|
||
neutron.tests.unit.agent.linux.test_ebtables_driver \
|
||
neutron.tests.unit.agent.linux.test_polling \
|
||
neutron.tests.unit.agent.linux.test_ip_lib \
|
||
neutron.tests.unit.agent.linux.test_ip_monitor \
|
||
neutron.tests.unit.agent.linux.test_iptables_manager \
|
||
neutron.tests.unit.agent.linux.test_external_process \
|
||
neutron.tests.unit.agent.linux.test_ovsdb_monitor \
|
||
neutron.tests.unit.agent.linux.test_bridge_lib \
|
||
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 \
|
||
# neutron.tests.unit.extensions.test_l3_ext_gw_mode \
|
||
# neutron.tests.unit.extensions.test_extra_dhcp_opt \
|
||
neutron.tests.unit.extensions.extendedattribute \
|
||
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 \
|
||
neutron.tests.unit.common.test_rpc \
|
||
neutron.tests.unit.common.test_log \
|
||
neutron.tests.unit.common.test_ipv6_utils \
|
||
neutron.tests.unit.cmd.test_ovs_cleanup \
|
||
neutron.tests.unit.cmd.test_netns_cleanup \
|
||
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
|
||
|
||
[flake8]
|
||
# E125 continuation line does not distinguish itself from next logical line
|
||
# E126 continuation line over-indented for hanging indent
|
||
# E128 continuation line under-indented for visual indent
|
||
# E129 visually indented line with same indent as next logical line
|
||
# E265 block comment should start with ‘# ‘
|
||
# H404 multi line docstring should start with a summary
|
||
# H405 multi line docstring summary not separated with an empty line
|
||
ignore = E125,E126,E128,E129,E265,H404,H405
|
||
show-source = true
|
||
builtins = _
|
||
# neutron/tests/tempest needs to be excluded so long as it continues
|
||
# to be copied directly from tempest, since tempest and neutron do not
|
||
# share a flake8 configuration.
|
||
exclude = ./.*,build,dist,neutron/openstack/common/*,neutron/tests/tempest
|
||
|
||
[hacking]
|
||
import_exceptions = neutron.i18n
|
||
local-check-factory = neutron.hacking.checks.factory
|