Hi,
When building the Debian package for trove-dashboard, I run this:
NOSE_WITH_OPENSTACK=1 \
NOSE_OPENSTACK_COLOR=1 \
NOSE_OPENSTACK_RED=0.05 \
NOSE_OPENSTACK_YELLOW=0.025 \
NOSE_OPENSTACK_SHOW_ELAPSED=1 \
DJANGO_SETTINGS_MODULE=trove_dashboard.test.settings \
python-coverage run \
$(CURDIR)/manage.py test trove_dashboard --settings=trove_dashboard.test.settings
which produces the bellow unit test failures. Note that the first trace isn't even counted as a failure, it happens even before the unit test runner starts.
Please help me to fix this before the final release.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 1781, in get_rows
row = self._meta.row_class(self, datum)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 534, in __init__
self.load_cells()
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 560, in load_cells
cell = table._meta.cell_class(datum, column, self)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 666, in __init__
self.data = self.get_data(datum, column, row)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 707, in get_data
data = table.render_row_actions(datum, pull_right=False)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 1448, in render_row_actions
bound_actions = self.get_row_actions(datum)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 1400, in get_row_actions
bound_action.bound_url = bound_action.get_link_url(datum)
File "/home/zigo/sources/openstack/mitaka/trove-dashboard/build-area/trove-dashboard-6.0.0~rc1/trove_dashboard/content/database_backups/tables.py", line 86, in get_link_url
'object_path': object_path})
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 600, in reverse
return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)))
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 508, in _reverse_with_prefix
(lookup_view_s, args, kwargs, len(patterns), patterns))
NoReverseMatch: Reverse for 'object_download' with arguments '()' and keyword arguments '{'object_path': '0edb.tar.gz', 'container_name': 'database_backups'}' not found. 0 pattern(s) tried: []
E.........Action grow cluster failed with Expected failure. for [flavor=aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa, volume=1, name=name1, type=master, related_to=None], [flavor=aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa, volume=1, name=name2, type=slave, related_to=master], [flavor=aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa, volume=1, name=None, type=None, related_to=None]
............Action scheduled shrinking of cluster failed with for inst1
.............................S.....E....
======================================================================
ERROR: test_index (trove_dashboard.content.database_backups.tests.DatabasesBackupsTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/openstack_dashboard/test/helpers.py", line 113, in instance_stub_out
return fn(self, *args, **kwargs)
File "/home/zigo/sources/openstack/mitaka/trove-dashboard/build-area/trove-dashboard-6.0.0~rc1/trove_dashboard/content/database_backups/tests.py", line 41, in test_index
res = self.client.get(INDEX_URL)
File "/usr/lib/python2.7/dist-packages/django/test/client.py", line 503, in get
**extra)
File "/usr/lib/python2.7/dist-packages/django/test/client.py", line 304, in get
return self.generic('GET', path, secure=secure, **r)
File "/usr/lib/python2.7/dist-packages/django/test/client.py", line 380, in generic
return self.request(**r)
File "/usr/lib/python2.7/dist-packages/django/test/client.py", line 467, in request
six.reraise(*exc_info)
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 174, in get_response
response = self.process_exception_by_middleware(e, request)
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 172, in get_response
response = response.render()
File "/usr/lib/python2.7/dist-packages/django/template/response.py", line 160, in render
self.content = self.rendered_content
File "/usr/lib/python2.7/dist-packages/django/template/response.py", line 137, in rendered_content
content = template.render(context, self._request)
File "/usr/lib/python2.7/dist-packages/django/template/backends/django.py", line 95, in render
return self.template.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 206, in render
return self._render(context)
File "/usr/lib/python2.7/dist-packages/django/test/utils.py", line 92, in instrumented_test_render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 173, in render
return compiled_parent._render(context)
File "/usr/lib/python2.7/dist-packages/django/test/utils.py", line 92, in instrumented_test_render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
result = block.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
result = block.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 1043, in render
output = self.filter_expression.resolve(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 709, in resolve
obj = self.var.resolve(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 850, in resolve
value = self._resolve_lookup(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 913, in _resolve_lookup
current = current()
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 1291, in render
return table_template.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/backends/django.py", line 95, in render
return self.template.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 206, in render
return self._render(context)
File "/usr/lib/python2.7/dist-packages/django/test/utils.py", line 92, in instrumented_test_render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/defaulttags.py", line 584, in render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/defaulttags.py", line 582, in render
six.iteritems(self.extra_context)}
File "/usr/lib/python2.7/dist-packages/django/template/defaulttags.py", line 581, in <dictcomp>
values = {key: val.resolve(context) for key, val in
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 709, in resolve
obj = self.var.resolve(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 850, in resolve
value = self._resolve_lookup(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 913, in _resolve_lookup
current = current()
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 1792, in get_rows
exc_info[2])
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 1781, in get_rows
row = self._meta.row_class(self, datum)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 534, in __init__
self.load_cells()
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 560, in load_cells
cell = table._meta.cell_class(datum, column, self)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 666, in __init__
self.data = self.get_data(datum, column, row)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 707, in get_data
data = table.render_row_actions(datum, pull_right=False)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 1448, in render_row_actions
bound_actions = self.get_row_actions(datum)
File "/usr/lib/python2.7/dist-packages/horizon/tables/base.py", line 1400, in get_row_actions
bound_action.bound_url = bound_action.get_link_url(datum)
File "/home/zigo/sources/openstack/mitaka/trove-dashboard/build-area/trove-dashboard-6.0.0~rc1/trove_dashboard/content/database_backups/tables.py", line 86, in get_link_url
'object_path': object_path})
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 600, in reverse
return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)))
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 508, in _reverse_with_prefix
(lookup_view_s, args, kwargs, len(patterns), patterns))
TemplateSyntaxError: Reverse for 'object_download' with arguments '()' and keyword arguments '{'object_path': '0edb.tar.gz', 'container_name': 'database_backups'}' not found. 0 pattern(s) tried: []
======================================================================
ERROR: test_resize_volume_bad_value (trove_dashboard.content.databases.tests.DatabaseTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/openstack_dashboard/test/helpers.py", line 113, in instance_stub_out
return fn(self, *args, **kwargs)
File "/home/zigo/sources/openstack/mitaka/trove-dashboard/build-area/trove-dashboard-6.0.0~rc1/trove_dashboard/content/databases/tests.py", line 889, in test_resize_volume_bad_value
res = self.client.post(url, post)
File "/usr/lib/python2.7/dist-packages/django/test/client.py", line 515, in post
secure=secure, **extra)
File "/usr/lib/python2.7/dist-packages/django/test/client.py", line 314, in post
secure=secure, **extra)
File "/usr/lib/python2.7/dist-packages/django/test/client.py", line 380, in generic
return self.request(**r)
File "/usr/lib/python2.7/dist-packages/django/test/client.py", line 467, in request
six.reraise(*exc_info)
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 174, in get_response
response = self.process_exception_by_middleware(e, request)
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 172, in get_response
response = response.render()
File "/usr/lib/python2.7/dist-packages/django/template/response.py", line 160, in render
self.content = self.rendered_content
File "/usr/lib/python2.7/dist-packages/django/template/response.py", line 137, in rendered_content
content = template.render(context, self._request)
File "/usr/lib/python2.7/dist-packages/django/template/backends/django.py", line 95, in render
return self.template.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 206, in render
return self._render(context)
File "/usr/lib/python2.7/dist-packages/django/test/utils.py", line 92, in instrumented_test_render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 173, in render
return compiled_parent._render(context)
File "/usr/lib/python2.7/dist-packages/django/test/utils.py", line 92, in instrumented_test_render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
result = block.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
result = block.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 209, in render
return template.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 208, in render
return self._render(context)
File "/usr/lib/python2.7/dist-packages/django/test/utils.py", line 92, in instrumented_test_render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 173, in render
return compiled_parent._render(context)
File "/usr/lib/python2.7/dist-packages/django/test/utils.py", line 92, in instrumented_test_render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 173, in render
return compiled_parent._render(context)
File "/usr/lib/python2.7/dist-packages/django/test/utils.py", line 92, in instrumented_test_render
return self.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
result = block.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
result = block.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
result = block.nodelist.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
bit = node.render_annotated(context)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
return self.render(context)
File "/usr/lib/python2.7/dist-packages/django/template/defaulttags.py", line 513, in render
six.reraise(*exc_info)
File "/usr/lib/python2.7/dist-packages/django/template/defaulttags.py", line 499, in render
url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app)
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 600, in reverse
return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)))
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 508, in _reverse_with_prefix
(lookup_view_s, args, kwargs, len(patterns), patterns))
NoReverseMatch: Reverse for 'resize_volume' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: [u'project/databases/(?P<instance_id>[^/]+)/resize_volume$']
Slowest 5 tests took 2.76 secs:
1.34 DatabasesBackupsTests.test_detail_backup
0.37 DatabaseTests.test_launch_instance
0.36 DatabaseTests.test_details_with_hostname
0.36 ClustersTests.test_grow_cluster
0.33 ClustersTests.test_index_list_exception
----------------------------------------------------------------------
Ran 65 tests in 9.731s
FAILED (SKIP=1, errors=2)
This bug has already been fixed in stable/mitaka and master. A fix will be available when stable mitaka rc2 is cut.