modifies the test to sort based on UUID

This patch modifies the volume-list filter test to perform the sorting
based on UUID instead of created_at timestamp as this timestamp might
be same for two volumes but UUID for every volume is unique.

Change-Id: Ibe1ab23c12ad8afe8d5adab6fe0c617445adc90d
Closes-Bug: 1313970
Add tests for availability-zone-list CINDER V1 API

This patch adds the JSON/XML clients and tests for CINDER
availability-zone-list V1 API

Change-Id: I4fc24e92def95d4a39d43877b120875b45bde9f9
Check non json type on glance client json_request method

This patch adds Content-Type headers for request and responses in
glance_http json_request methods based on what was discussed in a
previous patch.
(https://review.openstack.org/#/c/84454/4/tempest/tests/test_glance_http.py)
Also includes a couple of unit tests to assure the behavior.

Related to bp unit-tests

Change-Id: I570c86401f878ab8048194be252ce82d1b44f5b4
adds tests for CINDER encryption volume-type APIs

This patch adds the JSON tests for CINDER encryption volume-type V1 APIs.
It also adds the JSON clients for following APIs :
1. cinder encryption-type-delete

Change-Id: I20a68684f950fe36653eb4304edb56e244867ca3
Enable GET port_detail API to set parameters

We can set patameters(node_uuid, address, ...) to GET port_detail API.
This patch enables it.

Change-Id: I32e95deaffecfddece24c1a7e5c08c3e392380d5
Closes-Bug: #1312503
Add API test for resizing a stopped server

The compute API allows resizing a stopped server but we don't test it
and we've regressed that flow in the past, so add a test to guard
against it.

Change-Id: I6ca84da9deb9b9a97fad0e68b5f0845a617ae314
add test for command bash-completion

Change-Id: Ic9f02e05f8f99a30adf40266417ee4288765d7dc
Closes-bug: #1319294
Use a more sensible network topology for some router tests

This is achieved by creating subnets on separate logical
networks. A negative tests is also added to verify that
interface attachment fails when done with overlapping
subnets.

Closes-bug: #1316742

Change-Id: Idb1965e32d30acd962e1a3fa755b6c8b25c1bc31
Remove time.time mock from test_ssh

The function time.time is used in many places and especially in logging.
Mocking this function causes issues if the log level changes due to the
fact that every log message will cause a time.time call.

Splitting the test cases into 3 pieces since the time.sleep mock is
only usable for the good case. All tests with retries can't use it
and need to assert the result by measuring the time.

This fix is needed to use oslotest for tempest unit tests.

Change-Id: I800690f8ee1ee580cfcd71500b86782ff571ac0d
Closes-bug: bug 1320482
Fail fast during advanced networking test

This gives us the opportunity to discern whether the network
was sane prior to the server operation under scrutiny.

Change-Id: Iacc4f0307019efafda0de3abb0fa71ad13770850
Closes-bug: #1312841
Switch back to nc in test_load_balancer_basic

After test_load_balancer_basic started using inetd instead of netcat
we've started getting "BadStatusLine" errors from urllib.

That is why we need to move back to using netcat.
Also handle "BadStatusLine" error.

Related bug: 1309252
Change-Id: Ida919c63e27c6a003be4c249ba2e6f3e2ea7a7b3
Add "create a server" test with server group

When creating a server with the scheduler_hint "group", the server
will be in the group.
This patch adds the test for checking its behavior.

Change-Id: If5701d381198b01c5ee876bb22b14e5d4b967499
Related-Bug: #1306367
Related-Bug: #1298494
Sahara: add API tests for data sources

* create/list/get/delete API tests for data sources in Swift were added
* create/list/get/delete API tests for data sources in local HDFS
  were added
* create/list/get/delete API tests for data sources in external HDFS
  were added

Partially implements: blueprint savanna-api-tests

Change-Id: I78fe5c53d3af84c04402966891c096c8cbd1253a
Start using oslotest for tempest unit tests

This commit starts using the oslotest library. The fixture
oslo-incubator library is still left in the tree because I didn't
see the Config fixture in the library tree yet.

Also, it's probably worth noting that if the lock fixture is moved
from incubator to the library that oslotest will become a runtime
requirement on tempest. (which probably means we'll want to install
it from git in the gate)

Change-Id: I638f28975dff4cde2e4eaa6c154a41e66a0746e4
Sahara: preparations for job binary internal tests

* create/list/get/delete methods to Sahara API client
  for job binary internals were added
* Method "create_job_binary_internal" was added
* tearDownClass method was expanded

Partially implements: blueprint savanna-api-tests

Change-Id: I1013ce8d93ec44d5d5961bcd887812bdd1c6fcfb
Sahara: add API tests for job binary internals

* create/list/get/delete API tests for job binary internals were added
* "get_job_binary_internal_data" method to Sahara API client was added
* "test_job_binary_internal_get_data" test was added

Partially implements: blueprint savanna-api-tests

Change-Id: Ieaa765a1e941e5c1ac1b866099dbf966d64399b2
Cleanup docstring in test_l3_agent_scheduler

The docstring was incomplete in saying it required the
l3_agent_scheduler extension to be enabled.  I think it probably meant
to say that l3_agent_scheduler was listed in
network_feature_enabled.api_extensions, but that defaults to 'all' so
rather than explain how that config option works in the docstring, just
say that the l3_agent_scheduler extension is required and assume the
user understands how to configure Tempest.

Change-Id: If504bd6374b83dea24fa92f9ef6c852d76308ad1
Verify server list_addresses V2/V3 APIs attributes

This patch adds the JSON schema for Nova V2 & V3 server list_addresses
APIs response and validate the response with added
JSON schema to block the backward incompatibility change in the future.

The response body of server list_addresses V2 API is below:

{
    "addresses": {
        "private": [
            {
               "version": 4,
               "addr": "192.168.0.3"
            }
        ]
    }
}

The response body of server list_addresses V3 API is below:

{
    "addresses": {
        "private": [
            {
                "version": 4,
                "addr": "192.168.0.3",
                "type": "fixed",
                "mac_addr": "aa:bb:cc:dd:ee:ff"
            }
        ]
    }
}

Partially implements blueprint nova-api-attribute-test

Change-Id: I21392dfb8141d0cf98bf2dcbcb3fd49e75f9cbd8
tests the Keystone extensions V2 API

This patch adds the JSON/XML clients and tests for
Keystone discover extensions V2 API.

Change-Id: I9e869b9a5ba9302a77027581de7ae970f8d56305
Add Marconi Smoke Tests

Add smoke tests that check the existence of queues.
Add test that checks list queues.
Add test that gets queue statistics.
Add test that sets and gets queue metadata.

Tests for List Queues and Queue Stats use JSON Schema
validation.

Change-Id: I084d1ae0de4a729a913a7084f14c0d3172af29d3
Implements: blueprint add-basic-marconi-tests