def objects(): # Role = resolve_model('households.Role') # Member = resolve_model('households.Member') # Household = resolve_model('households.Household') Person = resolve_model('contacts.Person') Type = resolve_model('households.Type') MEN = Cycler(Person.objects.filter(gender=dd.Genders.male) .order_by('-id')) WOMEN = Cycler(Person.objects.filter(gender=dd.Genders.female) .order_by('-id')) TYPES = Cycler(Type.objects.all()) ses = dd.login() for i in range(5): pv = dict( head=MEN.pop(), partner=WOMEN.pop(), type=TYPES.pop()) ses.run( Person.create_household, action_param_values=pv) # yield ses.response['data_record'] # he = MEN.pop() # she = WOMEN.pop() # fam = Household(name=he.last_name + "-" + she.last_name, type_id=3) # yield fam # yield Member(household=fam, person=he, role=Role.objects.get(pk=1)) # yield Member(household=fam, person=she, role=Role.objects.get(pk=2)) return []
def test02(self): # This case demonstratest that ordering does not ignore case, at # least in sqlite. we would prefer to have `['adams', 'Zybulka']`, # but we get `['Zybulka', 'adams']`. contacts = dd.modules.contacts contacts.Partner(name="Zybulka").save() contacts.Partner(name="adams").save() ar = dd.login().spawn(contacts.Partners) l = [p.name for p in ar] expected = ['Zybulka', 'adams'] self.assertEqual(l, expected)