Correct page title for complementary projects
Change-Id: I38020bac15a30ebcf817617dd82cdbff089d3494
This commit is contained in:
parent
fec25e9404
commit
ec6004149d
@ -414,6 +414,7 @@ def templated(template=None, return_code=200):
|
|||||||
project_type = parameters.get_single_parameter(
|
project_type = parameters.get_single_parameter(
|
||||||
kwargs, 'project_type', use_default=True)
|
kwargs, 'project_type', use_default=True)
|
||||||
ctx['project_type'] = project_type
|
ctx['project_type'] = project_type
|
||||||
|
ctx['project_type_inst'] = vault.get_project_type(project_type)
|
||||||
|
|
||||||
ctx['release'] = parameters.get_single_parameter(
|
ctx['release'] = parameters.get_single_parameter(
|
||||||
kwargs, 'release', use_default=True)
|
kwargs, 'release', use_default=True)
|
||||||
@ -436,6 +437,7 @@ def templated(template=None, return_code=200):
|
|||||||
ctx['user_id'])
|
ctx['user_id'])
|
||||||
|
|
||||||
ctx['page_title'] = helpers.make_page_title(
|
ctx['page_title'] = helpers.make_page_title(
|
||||||
|
ctx['project_type_inst'],
|
||||||
ctx.get('release'), ctx.get('module_inst'),
|
ctx.get('release'), ctx.get('module_inst'),
|
||||||
ctx.get('company_original'), ctx.get('user_inst'))
|
ctx.get('company_original'), ctx.get('user_inst'))
|
||||||
|
|
||||||
|
@ -274,7 +274,10 @@ def make_commit_message(record):
|
|||||||
return s
|
return s
|
||||||
|
|
||||||
|
|
||||||
def make_page_title(release, module_inst, company, user_inst):
|
def make_page_title(project_type_inst, release, module_inst, company,
|
||||||
|
user_inst):
|
||||||
|
is_openstack = (project_type_inst['id'] in
|
||||||
|
['openstack', 'stackforge', 'all', 'integrated', 'other'])
|
||||||
if company or user_inst:
|
if company or user_inst:
|
||||||
if user_inst:
|
if user_inst:
|
||||||
s = user_inst['user_name']
|
s = user_inst['user_name']
|
||||||
@ -283,12 +286,19 @@ def make_page_title(release, module_inst, company, user_inst):
|
|||||||
else:
|
else:
|
||||||
s = company
|
s = company
|
||||||
else:
|
else:
|
||||||
s = 'OpenStack community'
|
if is_openstack:
|
||||||
|
s = 'OpenStack community'
|
||||||
|
else:
|
||||||
|
s = project_type_inst['title'] + ' community'
|
||||||
s += ' contribution'
|
s += ' contribution'
|
||||||
if module_inst:
|
if module_inst:
|
||||||
s += ' to %s' % module_inst['module_group_name']
|
s += ' to %s' % module_inst['module_group_name']
|
||||||
if release != 'all':
|
if is_openstack:
|
||||||
s += ' in %s release' % release.capitalize()
|
if release != 'all':
|
||||||
|
s += ' in %s release' % release.capitalize()
|
||||||
|
else:
|
||||||
|
s += ' in all releases'
|
||||||
else:
|
else:
|
||||||
s += ' in all releases'
|
if release != 'all':
|
||||||
|
s += ' during OpenStack %s release' % release.capitalize()
|
||||||
return s
|
return s
|
||||||
|
@ -87,23 +87,36 @@ Implements Blueprint ''' + (
|
|||||||
@mock.patch('stackalytics.dashboard.vault.get_vault')
|
@mock.patch('stackalytics.dashboard.vault.get_vault')
|
||||||
@mock.patch('stackalytics.dashboard.vault.get_user_from_runtime_storage')
|
@mock.patch('stackalytics.dashboard.vault.get_user_from_runtime_storage')
|
||||||
def test_make_page_title(self, user_patch, vault_patch):
|
def test_make_page_title(self, user_patch, vault_patch):
|
||||||
|
def _pt(id, title=None):
|
||||||
|
return dict(id=id.lower(), title=title or id)
|
||||||
|
|
||||||
user_inst = {'user_name': 'John Doe'}
|
user_inst = {'user_name': 'John Doe'}
|
||||||
module_inst = {'module_group_name': 'neutron'}
|
module_inst = {'module_group_name': 'neutron'}
|
||||||
|
|
||||||
self.assertEqual('OpenStack community contribution in all releases',
|
self.assertEqual('OpenStack community contribution in all releases',
|
||||||
helpers.make_page_title('all', None, None, None))
|
helpers.make_page_title(
|
||||||
|
_pt('OpenStack'), 'all', None, None, None))
|
||||||
self.assertEqual('OpenStack community contribution in Havana release',
|
self.assertEqual('OpenStack community contribution in Havana release',
|
||||||
helpers.make_page_title('Havana', None, None, None))
|
helpers.make_page_title(
|
||||||
|
_pt('OpenStack'), 'Havana', None, None, None))
|
||||||
self.assertEqual('Mirantis contribution in Havana release',
|
self.assertEqual('Mirantis contribution in Havana release',
|
||||||
helpers.make_page_title(
|
helpers.make_page_title(
|
||||||
'Havana', None, 'Mirantis', None))
|
_pt('Stackforge'), 'Havana', None, 'Mirantis',
|
||||||
|
None))
|
||||||
self.assertEqual('John Doe contribution in Havana release',
|
self.assertEqual('John Doe contribution in Havana release',
|
||||||
helpers.make_page_title(
|
helpers.make_page_title(
|
||||||
'Havana', None, None, user_inst))
|
_pt('all'), 'Havana', None, None, user_inst))
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
'John Doe (Mirantis) contribution to neutron in Havana release',
|
'John Doe (Mirantis) contribution to neutron in Havana release',
|
||||||
helpers.make_page_title(
|
helpers.make_page_title(
|
||||||
'Havana', module_inst, 'Mirantis', user_inst))
|
_pt('all'), 'Havana', module_inst, 'Mirantis', user_inst))
|
||||||
|
self.assertEqual('Ansible community contribution during OpenStack '
|
||||||
|
'Havana release',
|
||||||
|
helpers.make_page_title(
|
||||||
|
_pt('Ansible'), 'Havana', None, None, None))
|
||||||
|
self.assertEqual('Docker community contribution',
|
||||||
|
helpers.make_page_title(
|
||||||
|
_pt('Docker'), 'all', None, None, None))
|
||||||
|
|
||||||
@mock.patch('flask.request')
|
@mock.patch('flask.request')
|
||||||
@mock.patch('stackalytics.dashboard.parameters.get_default')
|
@mock.patch('stackalytics.dashboard.parameters.get_default')
|
||||||
|
Loading…
x
Reference in New Issue
Block a user