Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 11 additions & 7 deletions workflow/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -717,7 +717,8 @@ def save(self, *args, **kwargs):
super(WorkflowTeam, self).save()

def __unicode__(self):
return self.workflow_user.user.first_name + " " + self.workflow_user.user.last_name
return u"{} - {} <{}>".format(self.workflow_user, self.role,
self.workflowlevel1)


class AdminLevelOne(models.Model):
Expand Down Expand Up @@ -822,8 +823,10 @@ def save(self, *args, **kwargs):
super(Office, self).save()

def __unicode__(self):
new_name = unicode(self.name) + unicode(" - ") + unicode(self.code)
return new_name
if not self.code:
return unicode(self.name)
else:
return u"{} - {}".format(self.name, self.code)


class ProfileType(models.Model):
Expand Down Expand Up @@ -965,8 +968,10 @@ def save(self, *args, **kwargs):
super(Contact, self).save()

def __unicode__(self):
return self.name + ", " + self.title

if self.title:
return u"{}, {}".format(self.name, self.title)
else:
return unicode(self.name)

class StakeholderType(models.Model):
name = models.CharField("Stakeholder Type", max_length=255, blank=True, null=True)
Expand Down Expand Up @@ -1227,8 +1232,7 @@ def stakeholders(self):
return ', '.join([x.name for x in self.stakeholder.all()])

def __unicode__(self):
new_name = unicode(self.office) + unicode(" - ") + unicode(self.name)
return new_name
return unicode(self.name)


class WorkflowLevel2Sort(models.Model):
Expand Down
49 changes: 44 additions & 5 deletions workflow/tests/test_models.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from django.test import TestCase, override_settings, tag

import factories
from workflow.models import TolaUser
from workflow.models import TolaUser, Office


@tag('pkg')
Expand All @@ -22,24 +22,63 @@ def test_save_without_obfuscated_name(self):
self.assertEqual(tola_user.name, 'Thom Yorke')

def test_print_instance_no_name(self):
tolauser = factories.TolaUser(name=None)
tolauser = factories.TolaUser.build(name=None)
self.assertEqual(unicode(tolauser), u'-')

def test_print_instance_empty_name(self):
tolauser = factories.TolaUser(name='')
tolauser = factories.TolaUser.build(name='')
self.assertEqual(unicode(tolauser), u'-')

def test_print_instance_name(self):
tolauser = factories.TolaUser(name='Daniel Avery')
tolauser = factories.TolaUser.build(name='Daniel Avery')
self.assertEqual(unicode(tolauser), u'Daniel Avery')

@override_settings(TOLAUSER_OBFUSCATED_NAME='Fake Name')
def test_print_instance_with_obfuscated_name_and_fallback(self):
tolauser = factories.TolaUser()
tolauser = factories.TolaUser.build()
self.assertEqual(unicode(tolauser), u'Thom Yorke')

@override_settings(TOLAUSER_OBFUSCATED_NAME='Fake Name')
def test_print_instance_with_obfuscated_name_without_fallback(self):
user = factories.User(first_name='', last_name='')
tolauser = factories.TolaUser(user=user)
self.assertEqual(unicode(tolauser), u'-')


@tag('pkg')
class WorkflowTeamTest(TestCase):
def test_print_instance(self):
wfteam = factories.WorkflowTeam()
self.assertEqual(unicode(wfteam),
(u'Thom Yorke - ProgramAdmin <Health and Survival '
u'for Syrians in Affected Regions>'))


@tag('pkg')
class OfficeTest(TestCase):
def test_print_instance(self):
office = Office(name="Office", code="Code")
self.assertEqual(unicode(office), u'Office - Code')

def test_print_instance_without_code(self):
office = Office(name="Office", code=None)
self.assertEqual(unicode(office), u'Office')



@tag('pkg')
class ContactTest(TestCase):
def test_print_instance(self):
contact = factories.Contact.build(title="Title")
self.assertEqual(unicode(contact), u'Aryana Sayeed, Title')

def test_print_instance_without_title(self):
contact = factories.Contact.build()
self.assertEqual(unicode(contact), u'Aryana Sayeed')


@tag('pkg')
class WorkflowLevel2Test(TestCase):
def test_print_instance(self):
wflvl2 = factories.WorkflowLevel2.build()
self.assertEqual(unicode(wflvl2), u'Help Syrians')