This commit switches to use ostestr for running tests. ostestr
integrates the subunit-trace output that other projects use for test
output. (in addition to some other ui niceties)
Change-Id: Ib5b5225b2a7bfb7897e1efe55181389d1ae095cb
The functional test gate seems to be broken. The environment
variables are not being passed through.
Change-Id: Ied1f56877e4793c5e88e59d2afb7f1a5b3868560
Have the functional tests running with less customization and
less shell. This change will allow the functional tests to be
run against any cloud set up in the environment.
Change-Id: I24f621fbace62273e5a0be24e7af9078c0fc8550
Stick to using tox, remove the tools directory since it only
contained references to using venv. Also update a few other
locations that would have otherwise been incorrect.
Change-Id: I7d3e9067256ac0935f07904abcf584d898ac1d6f
If py26 or py27 tests are run first, there is a incompatibility in
the .testrepository that breaks several tests. To get around this,
you need to run the py33 tests first. This change was made over in
the cliff project.
Before:
(.venv)terry@brat:~/cli$ rm -rf .testrepository/
(.venv)terry@brat:~/cli$ tox
...
py26: commands succeeded
py27: commands succeeded
ERROR: py33: commands failed
ERROR: py34: commands failed
pep8: commands succeeded
After:
(.venv)terry@brat:~/cli$ rm -rf .testrepository/
(.venv)terry@brat:~/cli$ tox
...
py33: commands succeeded
py34: commands succeeded
py26: commands succeeded
py27: commands succeeded
pep8: commands succeeded
congratulations :)
(.venv)terry@brat:~/cli$
Change-Id: Ie1717efd6827eae36683f2e7fe7ff8ec58ff4aa8
In the latest hacking update a few rules were dropped, and we no
longer have to ignore these rules in our tox.ini.
Change-Id: Id38a1497019c7fe2d4ad8567f1c0c8d229951751
Create a script that kicks off function tests that exercise
openstackclient commands against a cloud.
If no keystone/openstack process is detected, a devstack instance
is spun up and the tests are run against that.
There is also a hook added to tox.ini so that we can run these
tests easily from a gate job.
Change-Id: I3cc8b2b800de7ca74af506d2c7e8ee481fa985f0
A noticed that there wasn't a docs option when running tox.
Thought it would be a good idea to add one.
Partial-Bug: #1331304
Change-Id: I5af9ff5d5986ad546146c0fa73eb98256fd00c5f
So we can update requriements.txt. But fix a couple of easy ones:
* Fix E251 (1 occurrance)
* Fix E131 (1 occurrance)
Change-Id: I62aaa423aa6da9e9f0ca026ec586b51cc6a6df03
* tox.ini: The LANG, LANGUAGE and LC_ALL environment overrides were
introduced originally during the testr migration in an attempt to be
conservative about the possibility that locale settings in the
calling environment could cause consistency problems for test runs.
In actuality, this should be unnecessary and any place where it does
cause issues ought to be considered an actual bug. Also, having
these in the configuration actively causes older pip to have
problems with non-ASCII content in some package metadata files under
Python 3, so drop it now.
Change-Id: I89ff5c22be053f09defb04b3ec589d74bffcae9d
Closes-Bug: #1277495
* restapi module provides basic REST API support
* uses dicts rather than Resource classes
* JSON serialization/deserialization
* log requests in 'curl' format
* basic API boilerplate for create/delete/list/set/show verbs
* ignore H302 due to urllib import
Change-Id: I3cb91e44e631ee19e9f5dea19b6bac5d599d19ce
Introduce py33 to tox.ini to make testing with
python3 easier.
Change-Id: I7a775ac51e0bc0a5929184af47d51ea1cc4e3219
Signed-off-by: Chuck Short <chuck.short@canonical.com>
Rename tools/pip-requires to requirements.txt and tools/test-requires
to test-requirements.txt. These are standard files, and tools in the
general world are growing intelligence about them.
Change-Id: I903213fda94a833335abaa7ad9a90bbb688ec15a
Fixes: bug #1179008
PEP8 E126 wants continued strings to line up vertically, totally destroying the
readability and visual indication of the beginning of a string in a list
* Ignore PEP8 E126 in order to indent the entry point strings in a readable manner.
* Sort the enrty point command strings by object then verb.
* Bring other ignores from run_tests.sh to tox.ini
Change-Id: I2593de7d6c058322101bc68636317cdba29fe664
Made all the necessary changes to pass new PEP8 standards.
Also cleaned up docstrings to conform to the HACKING stanards.
Change-Id: Ib8df3030da7a7885655689ab5da0717748c9edbe
Fix several pep8 issues and pin the pep8 test to pep8 version 1.1.
This should prevent future changes from being unmergable by the pep8
gate after a pep8 upgrade.
Change-Id: I4678a9179579fb5c7afe795fb43a8a89a99ad717
Fix pep8 errors (project is pep8 clean now).
Update setup.py to use openstack-common style dependencies.
Remove the unused novaclient dependency.
Change the keystoneclient dependency to a git URL.
Add test-requires, and move some pip-requires dependencies
into it.
Remove the test_utils unit test which wasn't testing anything
that is actually present in the project.
Add the test_authors unit test.
Use tox for running tests locally.
See: http://wiki.openstack.org/ProjectTestingInterface
Tox can manage virtualenvs, and is currently doing so for running
tests in Jenkins. It's just as, or more, useful for running tests
locally, so this starts the migration from the run_tests system to
tox. The goal is to reduce duplicate testing infrastructure, and
get what's running locally on developer workstations as close to
what is run by Jenkins as possible.
Run_tests.sh will now call tox to facilitate the transition for
developers used to typing "run_tests.sh".
Developers will need tox installed on their workstations. It can
be installed from PyPI with "pip install tox". run_tests.sh outputs
those instructions if tox is not present.
New facilities are available using tox directly, including:
tox -e py26 # run tests under python 2.6
tox -e py27 # run tests under python 2.7
tox -e pep8 # run pep8 tests
tox # run all of the above
tox -e venv foo # run the command "foo" inside a virtualenv
The OpenStack nose plugin is used when running tox from the
command line, so the enhanced, colorized output is visible to
developers running the test suite locally. However, when Jenkins
runs tox, xunit output will be used instead, which is natively
understood by jenkins and much more readable in that context.
Change-Id: Ib627be3b37b5a09d3795006d412ddcc35f8c6c1e