tree 8e8171808a16fd786894f1f85b169356d14b58e6
parent 7e3c936898d05eb9f52e5ce37f463f903ee16ed5
author Sergey Vilgelm <sergey@vilgelm.info> 1536862758 -0500
committer Sergey Vilgelm <sergey@vilgelm.info> 1537574024 -0500
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEwIoo0NdlUl/otoG0CNDi/3eIh+YFAlulhIkACgkQCNDi/3eI
 h+aa9A/+PrvRSW0TzZYO/JM/pM6zJ8aBdAFcxs627lF0uu6kPEMFl87xfRWCMLBV
 lmRT561kgAJwI6rmFUJXTph2a7b/TrrMhR43oRKUUo2jeBh3fzSzU9a0glBI5CUo
 MBPTx3Jqd6IwaEss8RzgPGcmXNF03h3Msbll0N154MfZWvSQ9pWeqhNYNh1GjA05
 t8n7L8qPW1Aqgdt6/wlb3POMdGAkkFyv8gkpx+krJZnTOkznqi4EBmn5gVs+mJbT
 ikK1pgHU45/DFMSTIEV0aniRPoHbt7EEKQd1LAFxWTvHrhc9PBzZ74yUWOX78e78
 HIFKhPS7i7KQJPa45tni74+DU/CwHlVtBzrh47wIAsp4MBMYwwGWxmjSePveZCRQ
 FYEpVvggmYB0WPUEfQdIzjUVPdoPSfeNh1BDcljCvqTvanmUOPHP2mMsIw6dY3bA
 eCcGrzbIZM6FaUN7bE+FFDZ2XtQOc9EAy5ylgIzfm+MNI1Sm7C8kbMqfyYXJoS++
 Sbdf3GnKJUb8S/UvQbZk9JzIvjUPIQQIOz6i2NKfLOs9CCinICO6ECpsgz5lSYb8
 iyxnWMNdDGBPPnQN/9KIjHjn62BtUPnlD8jnv1Dj7u6mJjB0OqE06OYi3a2BfRi3
 zuvaDS8G24bEjcrf0qrYaFQQBRlQ/5r6rpEVUcw/pdlYDqPjA68=
 =Wi+i
 -----END PGP SIGNATURE-----

Add missing test for "Show API v2 details" action

Add test to cover the request to "Show API v2 details"[0] action.
Add the show_version function to the NetworkVersionsClient class.
Modify the list_versions function of the NetworkVersionsClient class
to use the .get() function instead of the .raw_request() function
because using the .get() makes the function simplier and abstracts out
the logging and retrying a request for us.
Add the unit tests for the show_version function.

[0] https://developer.openstack.org/api-ref/network/v2/index.html#show-api-v2-details

Change-Id: I7ebea0c53437e929fc613495bcb8a8f8838c2044
