tempest/tempest/tests
Andrea Frittoli (andreaf) 2395014351 Prepare the Manager class for tempest.lib
Remove CONF dependencies from the client manager base class,
to make it useful to external consumers (such as plugins).

The ultimate target is to have a manager which can be used with
as little as possible setup, which only instantiates the clients
which are actually needed by the test, and which allows to register
new service clients defined in plugins.

Since plugins already import both manager.Manager and
clients.Manager, we maintain for now both classes with their names.
The plan is to migrate the 6 core service client groups to
manager.Manager, so that those clients are available to all tests
along with plugin clients. That requires a few steps. I'm doing
changes in clients.Manager for now so that it's easier to review.

The result of this first step is:
- manager.Manager is moved to manager_lib.Manager and does not
  depend on CONF anymore, nor on any tempest unstable class.
  It does not provide any client yet.
  Add unit test coverage for this class.
- manager.Manager is still provided with backward compatible
  interface for plugins benefit.

Change-Id: Ic9ccc7037d15cdd4c6f1749eaeda13d4e7ee0114
Partially-implements: bp client-manager-refactor
2016-06-28 15:24:41 +01:00
..
cmd Merge "Add subunit-describe-calls" 2016-06-27 18:26:45 +00:00
common Merge "Member role may already exist" 2016-06-28 10:00:36 +00:00
files Fix author information 2014-02-24 19:19:22 +09:00
lib Remove unnecessary setUp and tearDown 2016-06-23 10:34:42 +08:00
negative Fix base unit test class location 2016-04-22 18:11:30 -04:00
services Return ResponseBody object from delete_role 2016-06-17 18:54:16 +09:00
stress Fix base unit test class location 2016-04-22 18:11:30 -04:00
README.rst Add unit test section to the field guide index 2014-07-25 16:13:10 -04:00
__init__.py Add unittest framework + tests for wrapper scripts 2013-08-27 11:55:13 -04:00
base.py Fix base unit test class location 2016-04-22 18:11:30 -04:00
fake_auth_provider.py Addresses Expect: 100-continue client behavior 2016-05-11 09:33:10 -05:00
fake_config.py Remove deprecated legacy credentials provider 2016-05-20 18:32:15 -04:00
fake_tempest_plugin.py Add initial unit test for tempest plugins 2015-08-28 10:16:43 +02:00
test_base_test.py Stop passing TestResources to Managers 2016-06-09 11:32:22 +01:00
test_decorators.py Add test case for CONF skip decorators with message 2016-05-10 14:27:36 +09:00
test_hacking.py Add hacking rule to enfore no config in tempest.lib 2016-06-01 15:05:59 -04:00
test_list_tests.py Fix base unit test class location 2016-04-22 18:11:30 -04:00
test_microversions.py Fix base unit test class location 2016-04-22 18:11:30 -04:00
test_negative_rest_client.py Fix base unit test class location 2016-04-22 18:11:30 -04:00
test_service_clients.py Prepare the Manager class for tempest.lib 2016-06-28 15:24:41 +01:00
test_tempest_plugin.py Fix base unit test class location 2016-04-22 18:11:30 -04:00
test_wrappers.py Fix base unit test class location 2016-04-22 18:11:30 -04:00
utils.py Unit tests: mock some time.sleep and time.time 2016-03-03 14:33:45 +01:00

README.rst

Tempest Field Guide to Unit tests

What are these tests?

Unit tests are the self checks for Tempest. They provide functional verification and regression checking for the internal components of tempest. They should be used to just verify that the individual pieces of tempest are working as expected. They should not require an external service to be running and should be able to run solely from the tempest tree.

Why are these tests in tempest?

These tests exist to make sure that the mechanisms that we use inside of tempest to are valid and remain functional. They are only here for self validation of tempest.

Scope of these tests

Unit tests should not require an external service to be running or any extra configuration to run. Any state that is required for a test should either be mocked out or created in a temporary test directory. (see test_wrappers.py for an example of using a temporary test directory)