add testcases for cinder v2 api

Registered by Zhikun Liu

cinder v2 api has some updates, they should be covered in tempest.
It includes two parts:
1. v2 API allows name instead of display_name
2. allow limit, sort_key and sort_dir in query statement

Cinder v2 api only has some small updates, so v1 and v2 tests could share
service client and test code. In this way, we don't need to maintain many
duplictate test codes.

A Google doc to manage the task progress:
https://docs.google.com/spreadsheets/d/1ztFAn1D677zTVBahZB0sLjQkcU2_oIthZ-eRNRHI4LM

Blueprint information

Status:
Complete
Approver:
Giulio Fidente
Priority:
Medium
Drafter:
Zhikun Liu
Direction:
Approved
Assignee:
Zhikun Liu
Definition:
Approved
Series goal:
Proposed for icehouse
Implementation:
Implemented
Milestone target:
milestone icon juno-2
Started by
Zhikun Liu
Completed by
Ghanshyam Mann

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/cinder-v2-api-tests,n,z

Addressed by: https://review.openstack.org/59113
    cinder v2 api tests(WORKINPROGRESS)

Addressed by: https://review.openstack.org/59733
    cinder v2 api tests - part2

Addressed by: https://review.openstack.org/64402
    enable volume list tests for cinder v2 - part1

Addressed by: https://review.openstack.org/64660
    cinder v2 api tests - fix volume client

Addressed by: https://review.openstack.org/72057
    fix base_url in auth.py

Addressed by: https://review.openstack.org/79238
    add volume list tests for cinder v2

Addressed by: https://review.openstack.org/90317
    Add spec for bp/cinder-v2-api-tests

Addressed by: https://review.openstack.org/95629
    Sharing codes for cinder v1 and v2 tests

Addressed by: https://review.openstack.org/96674
    Sharing codes for cinder v1 and v2 tests

Addressed by: https://review.openstack.org/100128
    Sharing codes for volumes list tests

Addressed by: https://review.openstack.org/100193
    Enable some volumes v2 tests by sharing codes

Addressed by: https://review.openstack.org/106664
    enable volumes v2 snapshot tests by sharing codes

Addressed by: https://review.openstack.org/107934
    Enable some volumes v2 tests by sharing codes part2

Gerrit topic: https://review.openstack.org/#q,topic:bp/client-checks-success,n,z

Addressed by: https://review.openstack.org/90306
    Adds the clients and tests for CINDER QoS V1 & V2 APIs

Addressed by: https://review.openstack.org/121055
    enable cinder v2 api for test_multi_backend

Addressed by: https://review.openstack.org/126213
    enable cinder v2 api for volumetype test

Addressed by: https://review.openstack.org/133947
    Enable cinder v2 api for volume hosts

Addressed by: https://review.openstack.org/134889
    Enable cinder v2 api tests in volume quotas

Addressed by: https://review.openstack.org/135179
    enable cinder v2 api for test_volumes_backup

Addressed by: https://review.openstack.org/135190
    Enable v2 api for volume and snapshot tests

Addressed by: https://review.openstack.org/135211
    Enable cinder v2 api for volume type extra specs tests

Addressed by: https://review.openstack.org/135860
    add cinder v2 api tests for volume_services

Addressed by: https://review.openstack.org/139904
    Remove Volume V1 specific test base classes

(?)

Work Items

Work items:
add cinder v2 support in tempest: DONE
write some new tests for cinder v2 api: DONE
Add common service client for v1 and v2: DONE
Add a common class for Cinder v1 and v2 API tests: DONE
Add a common admin class for Cinder v1 and v2 API tests: DONE
Share API test classes: DONE

This blueprint contains Public information 
Everyone can see this information.