adding view builder tests

This commit is contained in:
Brian Waldon
2011-03-22 10:58:31 -04:00
parent ea44238e8a
commit b82d548d03
2 changed files with 39 additions and 1 deletions

View File

@@ -15,6 +15,8 @@
# License for the specific language governing permissions and limitations
# under the License.
import os
def get_view_builder(req):
base_url = req.application_url
@@ -54,4 +56,4 @@ class ViewBuilder(object):
def generate_href(self, version_number):
"""Create an url that refers to a specific version_number."""
return "%s/%s" % (self.base_url, version_number)
return os.path.join(self.base_url, version_number)

View File

@@ -21,6 +21,7 @@ import webob
from nova import context
from nova import test
from nova.tests.api.openstack import fakes
from nova.api.openstack import views
class VersionsTest(test.TestCase):
@@ -59,3 +60,38 @@ class VersionsTest(test.TestCase):
},
]
self.assertEqual(versions, expected)
def test_view_builder(self):
base_url = "http://example.org/"
version_data = {
"id": "3.2.1",
"status": "CURRENT",
}
expected = {
"id": "3.2.1",
"status": "CURRENT",
"links": [
{
"rel": "self",
"href": "http://example.org/3.2.1",
},
],
}
builder = views.versions.ViewBuilder(base_url)
output = builder.build(version_data)
self.assertEqual(output, expected)
def test_generate_href(self):
base_url = "http://example.org/app/"
version_number = "v1.4.6"
expected = "http://example.org/app/v1.4.6"
builder = views.versions.ViewBuilder(base_url)
actual = builder.generate_href(version_number)
self.assertEqual(actual, expected)