20 Commits

Author SHA1 Message Date
Dean Troyer
bc3039a43c Fix py26 tests: assertDictEqual
assertDictEqual is not present in py26 so shim it in here
stolen from python-keystoneclient/tests/test_auth_token_middleware.py

Change-Id: Ifd5990a8c03d11ee93cddc2f61653255970d974c
2013-06-25 10:35:22 -05:00
Dean Troyer
ea9ec1c6bc Tweak volume commands and add k=v argparse action
Basic cleanups:
* change metadata to property
* add new KeyValueAction to parse the property options
* multiple properties can be set using multiple --property args
* consistent formatting
* do lookups for volume args

Change-Id: Ib6c43f01ad46b395aee8c61e886f42e2a5f5573e
2013-05-24 15:02:52 -05:00
Monty Taylor
016a0b301e Fix flake8 errors in anticipation of flake8 patch.
Change-Id: Ifdc4322b699f2bd91a6900e55695acd3d736568e
2013-05-14 08:28:48 -07:00
Josh Kearney
237f0dd612 Correct the version mapping to image service.
This was preventing image support from being activated.

Change-Id: I1b7ab9174b90c55423b244ca63402d33b4411a49
2013-02-19 09:19:52 -06:00
Steve Martinelli
79001ce88a Add volume test cases and structure
add basic unit test for client
update/modify test_shell.py to include volume

Change-Id: I7d08e15a2711da5e51590b8a82eca3a1234962f8
2013-02-11 16:10:25 -06:00
Dean Troyer
fbc412e533 Multiple API version support
* Use multiple entry point groups to represent each API+version
  combination supported
* Add some tests

Try it out:
* Right now only '* user' commands have multiple overlapping versions;
  you can see the selection between v2.0 and v3 by looking at the
  command help output for 'tenant' vs 'project':

  os --os-identity-api-version=2.0 help set user
  os --os-identity-api-version=3 help set user

Change-Id: I7114fd246843df0243d354a7cce697810bb7de62
2013-02-06 11:36:28 -06:00
Josh Kearney
17a87b9c02 Clean up test_shell so that the tests are captured though the test framework.
Also makes a small modification to gitignore.

Change-Id: Iefbfbcfd35270b06ed65edb34708fa9b4d5bf563
2013-01-30 14:59:29 -06:00
Josh Kearney
64cd45b03d Ensure that image and identity clients are constructed properly.
Also removed tests that don't test anything.

Change-Id: I0cb420248c8a1374110c014063fe029686e90216
2013-01-29 12:11:52 -06:00
Josh Kearney
4297e5781b First pass at adding compute unit tests.
Change-Id: Icf3340d457f75eec89bb0e5c9b4b953c3b81020f
2013-01-28 17:58:59 -06:00
Josh Kearney
0a4912f9fb Standardize on a copyright header and ensure all files have them.
Change-Id: I64812bca01ca655c9cf9239a0daea84907082a29
2013-01-24 12:02:23 -06:00
Josh Kearney
63c8bb5306 Migrate from nose to testr.
Run tests with testr for parallel execution.

Part of blueprint grizzly-testtools.

Change-Id: I560592186f2f440049a451a32e58067262ab62d0
2013-01-22 12:16:09 -06:00
Josh Kearney
c1ea298904 Clean up test environment and remove unused imports.
First round of adding more complete unit test coverage.

Change-Id: Ic1979c499ca6fcb784892a95954a3527539c4e53
2013-01-22 11:44:18 -06:00
Dean Troyer
fe3123b802 Move from unittest2 to testtools
Change-Id: I475a082af0660e0ee0e86ca4cd1bf0e2d711e3ed
2013-01-15 15:59:59 -06:00
lrqrun
2372142eaa Fix PEP8 issues.
Fix some pep8 issues in doc/source/conf.py and tests/test_shell.py  make the code looks pretty.

Change-Id: I927f03aff4190f1ac30eb56e7c545de555978c31
2012-08-29 14:17:08 +08:00
Dean Troyer
f9aa3f3c84 Create tests for shell interface
* use unittest2
* shell: command-line options

Change-Id: I558fb10b8607e4f6e5c44d5fcac902546a8748a4
2012-06-22 10:20:04 -05:00
Doug Hellmann
5e4032150d Fix "help" command and implement "list server" and "show server"
blueprint client-manager
blueprint nova-client
bug 992841

Move the authentication logic into a new ClientManager class so that only commands that need to authenticate will trigger that code.
Implement "list server" and "show server" commands as examples of using the ClientManager, Lister, and ShowOne classes.

Change-Id: I9845b70b33bae4b193dbe41871bf0ca8e286a727
2012-05-04 09:35:40 -04:00
Bhuvan Arumugam
3c7350b3c9 Auto generate AUTHORS for python-openstackclient.
Bug: 976267

Now that git commits are gated by CLA, we shouldn't enforce
committers to add an entry in AUTHORS file. The AUTHORS file
should be generated automatically, based on git commits.

This commit fixes the problem.

* AUTHORS
  Remove this file.

* tests/test_authors.py
  Remove this test case.

* .gitignore
  Add AUTHORS file.

* openstackclient/openstack/common/setup.py
  generate_authors(): New method to create AUTHORS file. If
  AUTHORS.in file exists, append it's content to AUTHORS file.

* setup.py
  Import the new method.
  Generate AUTHORS file before creating the package.

Change-Id: Ia5488a43f88e13a0fb1f7a5d8d10a576b9034dc8
2012-05-01 16:31:23 -07:00
James E. Blair
95c2f27fa4 Add openstack-common and test infrastructure.
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
2012-04-28 22:27:34 +00:00
Dean Troyer
06f82305b5 Set up common utils 2012-04-25 16:10:05 -05:00
Dean Troyer
11d3ba4570 Add openstackclient bits 2012-04-19 22:41:44 -05:00