We're close to the end of porting all unit tests
to be compatible with python34. However, ~8 tests are skipped
specifically in python34 because of bugs mostly in mox3.
Those tests will likely have to be converted to mock in
the future. Note that from now on, every test added will have
to be python34 compatible.
Also, fix __str__ function of ExceptionGroup in test_scheduler.
It intentionally uses str so as to not flatten the unicode
literal in python2.7 and also be compatible with python3.4
blueprint heat-python34-support
Change-Id: Id9b8aa11b17c96895092dd701b761a479df09282
Adding convergence prototype scenarios tests to run against actual
heat code base.
These tests are not modified and should test the sanity of covergence
implementation.
Change-Id: I69373a423da85f23597623457a7a7f1d5c2b0d2a
Implements: blueprint convergence-simulator-tests
Co-Authored-By: Anant Patil <anant.patil@hp.com>
this avoids py34 failure in default tox run when testrepository is
not yet initialized (e.g. fresh repo clone).
Change-Id: I95d3590ebd67dc4f2c3a53b3da50a3d3ed481f7f
Closes-Bug: #1489059
Add description about how to use pdb debugger with new tox option:
"debug". This option was added to tox.ini
Change-Id: I8a8934815eb147b4bb60e4ca2f5177f2e58cce76
Co-Authored-By: Tony Wang <muyu@unitedstack.com>
PYTHONHASHSEED was set to 0 to disable hash randomization, because some
tests assertions were order sensitive. This commit is to improve the
assertions, so the PYTHONHASHSEED hack in tox.ini is not needed.
Change-Id: I4ff09d202af818d27321e8e83718e82d0c48e3d2
Closes-Bug: 1348818
This allows the removal of the heat_integrationtests regex, which means
that {posargs} can be specified to run only a single test if desired.
Change-Id: I0724a51960b9137824b139bc1d69b42a9e5d4b9c
Also, fix minor flake8 issue related to Long literal.
This should now have the python34 gate job passing.
partial blueprint heat-python34-support
Change-Id: I7f85e7251fc96587df0b43daac202c38542a6f6c
Add a tox environment for bandit so it can be run as a gate job
eventually. As-is, there are no high severity issues detected in heat.
Change-Id: Iab098a1d8bac5c95d67e6867ad5249987c3a786e
The desired OS_TEST_DBAPI_ADMIN_CONNECTION string is now reflected
in the oslo.db 1.12.0 release's default behavior, and so does not
need to be set any longer to achieve the same opportunistic backend
discovery for tests.
Change-Id: Ib6b0d476ae1d75ca25ac3737cd83bdd0aa3d94eb
As discussed in the Liberty Design Summit "Moving apps to Python 3"
cross-project workshop, the way forward in the near future is to
switch to the pure-python PyMySQL library as a default.
https://etherpad.openstack.org/p/liberty-cross-project-python3
Also set the OS_TEST_DBAPI_ADMIN_CONNECTION override variable so
that oslo.db opportunistic detection will know to use PyMySQL until
I12b32dc097a121bd43991bc38dd4d289b65e86c1 makes it the default
behavior.
Change-Id: I17e052215ce6e1604cdda848ccc20862452ccbc7
Co-Authored-By: Victor Sergeyev <vsergeyev@mirantis.com>
Adds a new py34 environment in tox.ini which builds off of separate
(test-)requirements-py3.txt files that will just run flake8 for now
and an empty test-file.
partial blueprint heat-python34-support
Change-Id: I5f00a96fc70613ca7014370ec826d0a6a6199fde
This should improve the turnaround time of the gate tests and
also make room for more integration tests.
Also, remove duplicate addCleanup.
Change-Id: Iacdd554ee13bb87b0b71ebf547209f94e945f342
and use it during tox run. This should speed up the tox venv creation
somewhat, as the new requirements is shorter, thus less packages are
installed or C extensions compiled.
Also this is the first step to ease packaging of the integration tests
as a separate tool.
Change-Id: I914eb675e7f025e03a22719d5dff8ed741fbd37d
This helps avoid bogus errors in third party configuration files such as
those in .ropeproject folders.
Change-Id: I4988b5d5dc150d5ee949266916d0f06a4d4176ce
Closes-Bug: 1414869
Use parentheses instead of backslash for line continuation.
Plus, usage of escaped quotes in long strings is avoided where it makes
sense.
Change-Id: If2e78012b85a4430c6f03f65784cac2d032cf116
This also brings in newer versions of flake8, pyflakes and pep8,
with new and updated checks.
Some of them fail on our current code base, so first those failing are
disabled.
Most of them will be enabled one-by-one in subsequent patches.
Change-Id: Ib5fc4640b33c238ddb4e59a441c6710f607296b1
Replace usage of old incubator configuration generator by the
oslo.config tool.
tools/config/generate_sample.sh has been replaced by tox -egenconfig.
heat_integrationtests/generate_sample.sh has been replaced by
oslo-config-generator
--config-file=heat_integrationtests/config-generator.conf
Change-Id: I6d95df203b556c8ec2088d40a446427f7087b9a7
- added full log for integration tests by default
- added env 'py27log' which allows to get log for unit-tests
Change-Id: I43ca330c82ffe100247102021fce1f00acb4d11a
As we start actively moving the code around (e.g. for resources
decoupling) stale *.pyc files might lead to cryptic failures when running
tox locally (and not from the freshly cloned repo as OpenStack Infra
does).
tox installs the package being tested in venv using development mode,
thus the actually tested code is from the repo working tree, so it is
beneficial to have it cleaned from pyc files before the test run.
Now removed run_tests.sh also had similar feature, but for DB migrations
only.
The files from .tox dir are left in place, as that might speedup the
tests run somewhat.
Change-Id: I91adfbc806111e2ab023199c5dea1ea7ebeca5da
For example "tox -epy27 -- heat.tests.test_hot.StackParametersTest" will
run correctly with this patch. Otherwise the same command line still run all.
Change-Id: Ib108a6f5c319c3060475a2daa47e8e35441a840e