def test_get_mamy2many_from(self): pr = my.Project.objects.create(naam="test", kort="test project") sp = my.Userspec.objects.create(project=pr, naam="testspec") aw = my.Userwijz.objects.create(project=pr, nummer='testwijz', gereed=False) gt = my.Gebrtaak.objects.create(project=pr, naam="testtaak") #, spec=sp) gt.rfc.add(aw) fp = my.Funcproc.objects.create(project=pr, naam="testproc", spec=sp) fp.rfc.add(aw) testobj = funcs.GetRelations(aw, 'userwijz') result = testobj.get_many2many_from() assert result[0] == ['gebrtaak', 'funcproc', 'entiteit'] assert result[1][0]['text'] == 'Raakt gebruikerstaak' assert result[1][0]['btn'] == funcs.BTNTXT.format(pr.id, 'userwijz', aw.id, 'rel', 'gebrtaak', funcs.ADD_TEXT) assert result[1][0]['links'] == [funcs.RELTXT.format(pr.id, 'gebrtaak', gt.id, gt.naam + ': ') + ' ' + funcs.BTNTXT.format(pr.id, 'gebrtaak', gt.id, 'unrel/naar/userwijz', aw.id, funcs.REMOVE_TEXT)] assert result[1][1]['text'] == 'Raakt functioneel proces' assert result[1][1]['btn'] == funcs.BTNTXT.format(pr.id, 'userwijz', aw.id, 'rel', 'funcproc', funcs.ADD_TEXT) assert result[1][1]['links'] == [funcs.RELTXT.format(pr.id, 'funcproc', fp.id, fp.naam + ': ') + ' ' + funcs.BTNTXT.format(pr.id, 'funcproc', fp.id, 'unrel/naar/userwijz', aw.id, funcs.REMOVE_TEXT)] assert result[1][2]['text'] == 'Raakt entiteit' assert result[1][2]['btn'] == funcs.BTNTXT.format(pr.id, 'userwijz', aw.id, 'rel', 'entiteit', funcs.ADD_TEXT) assert result[1][2]['links'] == []
def test_get_foreignkeys_from_1(self): pr = my.Project.objects.create(naam="test", kort="test project") sp = my.Userspec.objects.create(project=pr, naam="testspec") gt = my.Gebrtaak.objects.create(project=pr, naam="testtaak", spec=sp) fp = my.Funcproc.objects.create(project=pr, naam="testproc", spec=sp) testobj = funcs.GetRelations(sp, 'userspec') result = testobj.get_foreignkeys_from() assert result[0] == ['gebrtaak', 'funcproc'] assert result[1][0]['text'] == 'Betrokken gebruikerstaak' assert result[1][0]['btn'] == funcs.BTNTXT.format(pr.id, 'userspec', sp.id, 'rel', 'gebrtaak', funcs.ADD_TEXT) assert result[1][0]['links'] == [funcs.RELTXT.format(pr.id, 'gebrtaak', gt.id, gt.naam + ': ') + ' ' + funcs.BTNTXT.format(pr.id, 'gebrtaak', gt.id, 'unrel/naar/userspec', sp.id, funcs.REMOVE_TEXT)] assert result[1][1]['text'] == 'Betrokken functioneel proces' assert result[1][1]['btn'] == funcs.BTNTXT.format(pr.id, 'userspec', sp.id, 'rel', 'funcproc', funcs.ADD_TEXT) assert result[1][1]['links'] == [funcs.RELTXT.format(pr.id, 'funcproc', fp.id, fp.naam + ': ') + ' ' + funcs.BTNTXT.format(pr.id, 'funcproc', fp.id, 'unrel/naar/userspec', sp.id, funcs.REMOVE_TEXT)] assert testobj.get_foreignkeys_from()[2:] == ([], [])
def view_document(request, proj, edit='', soort='', id='', srt='', verw='', meld=''): """toon/wijzig document """ info_dict = funcs.init_infodict_for_detail(proj, soort, edit, meld) margins = funcs.get_margins_for_type(soort) info_dict["leftw"], info_dict["rightw"], info_dict["rightm"] = margins info_dict["lengte"] = funcs.get_fieldlengths(soort) info_dict['form_addr'] = '/docs' + funcs.get_update_url( proj, edit, soort, id, srt, verw) owner_proj = funcs.get_object('project', proj) info_dict["ar_proj"] = owner_proj.actiereg info_dict["ar_user"] = owner_proj.aruser if id: # existing item obj = funcs.get_object(soort, id=id) info_dict['data'] = obj all_items = funcs.get_ordered_objectlist(proj, soort) info_dict["prev"], info_dict["next"] = funcs.determine_adjacent( all_items, obj) relations = funcs.GetRelations(obj, soort) # , srt) info_dict['fkeys_to'] = relations.get_foreignkeys_to() info_dict['m2ms_to'] = relations.get_many2many_to() # button_lijst = [] # of button_lijst = my.rectypes[soort].from_titles.keys() result = relations.get_foreignkeys_from() buttons, info_dict['fkeys_from'], info_dict['andere'], info_dict[ 'attrs'] = result more_buttons, info_dict['m2ms_from'] = relations.get_many2many_from() button_lijst = buttons + more_buttons info_dict["sect"] = '/'.join((soort, str(id))) if edit == 'view': info_dict["buttons"] = funcs.get_relation_buttons( proj, soort, id, button_lijst) else: obj = None info_dict['nummer'] = funcs.get_new_numberkey_for_soort( owner_proj, soort) info_dict['title'] = "Project {} - {}".format( owner_proj.naam, funcs.get_detail_title(soort, edit, obj)) naam_ev, naam_mv, sect = funcs.get_names_for_type(soort) if srt != '': info_dict['ref'] = (soort, naam_mv, verw) else: info_dict['lijstsoort'] = soort info_dict['lijstvan'] = naam_mv info_dict["sctn"] = sect return render(request, '{}.html'.format(soort), info_dict)
def test_get_foreignkeys_from_3(self): pr = my.Project.objects.create(naam="test", kort="test project") itm = my.Dataitem.objects.create(project=pr, naam="testitem") ele = my.Dataelement.objects.create(sleutel=1, naam="testelement", hoort_bij=itm) testobj = funcs.GetRelations(itm, 'dataitem') result = testobj.get_foreignkeys_from() assert result[:3] == ([], [], []) assert [x for x in result[3]] == [ele]
def test_get_foreignkeys_from_2(self): pr = my.Project.objects.create(naam="test", kort="test project") ent = my.Entiteit.objects.create(project=pr, naam="testentiteit") att = my.Attribuut.objects.create(primarykey=1, naam="testattr", hoort_bij=ent) testobj = funcs.GetRelations(ent, 'entiteit') result = testobj.get_foreignkeys_from() assert result[:3] == ([], [], []) assert [x for x in result[3]] == [att]
def test_init(self): pr = my.Project.objects.create(naam="test", kort="test project") gt = my.Gebrtaak.objects.create(project=pr, naam="testtaak") testobj = funcs.GetRelations(gt, 'gebrtaak') # , 'userspec') assert testobj.obj == gt assert testobj.soort == 'gebrtaak' # assert testobj.srt == 'userspec' assert testobj.opts == my.Gebrtaak._meta
def test_get_mamy2many_to_1(self): pr = my.Project.objects.create(naam="test", kort="test project") gt = my.Gebrtaak.objects.create(project=pr, naam="testtaak") #, spec=sp) testobj = funcs.GetRelations(gt, 'gebrtaak') result = testobj.get_many2many_to() assert result[0]['text'] == 'Is geraakt door aanvraag wijziging' assert result[0]['btn'] == funcs.BTNTXT.format(pr.id, 'userwijz', 'rel', 'gebrtaak', gt.id, funcs.ADD_TEXT) assert result[0]['links'] == []
def test_get_foreignkeys_to_1(self): pr = my.Project.objects.create(naam="test", kort="test project") gt = my.Gebrtaak.objects.create(project=pr, naam="testtaak") #, spec=sp) testobj = funcs.GetRelations(gt, 'gebrtaak') result = testobj.get_foreignkeys_to() assert result[0]['btn'] == funcs.BTNTXT.format(pr.id, 'userspec', 'rel', 'gebrtaak', gt.id, funcs.ADD_TEXT) assert result[0]['text'] == 'Hoort bij gebruikersspecificatie' assert result[0]['links'] == []
def test_get_foreignkeys_to_2(self): pr = my.Project.objects.create(naam="test", kort="test project") sp = my.Userspec.objects.create(project=pr, naam="testproc") gt = my.Gebrtaak.objects.create(project=pr, naam="testtaak", spec=sp) testobj = funcs.GetRelations(gt, 'gebrtaak') result = testobj.get_foreignkeys_to() assert result[0]['text'] == 'Hoort bij gebruikersspecificatie' assert result[0]['links'] == [funcs.RELTXT.format(pr.id, 'userspec', sp.id, sp.naam + ': ') + ' ' + funcs.BTNTXT.format(pr.id, 'gebrtaak', gt.id, 'unrel/van/userspec', sp.id, funcs.REMOVE_TEXT)] assert 'btn' not in result[0]
def test_get_mamy2many_to_2(self): pr = my.Project.objects.create(naam="test", kort="test project") aw = my.Userwijz.objects.create(project=pr, nummer='testwijz', gereed=False) gt = my.Gebrtaak.objects.create(project=pr, naam="testtaak") #, spec=sp) gt.rfc.add(aw) testobj = funcs.GetRelations(gt, 'gebrtaak') result = testobj.get_many2many_to() assert result[0]['text'] == 'Is geraakt door aanvraag wijziging' assert result[0]['btn'] == funcs.BTNTXT.format(pr.id, 'userwijz', 'rel', 'gebrtaak', gt.id, funcs.ADD_TEXT) assert result[0]['links'] == [funcs.RELTXT.format(pr.id, 'userwijz', aw.id, aw.nummer + ': ') + ' ' + funcs.BTNTXT.format(pr.id, 'gebrtaak', gt.id, 'unrel/van/userwijz', aw.id, funcs.REMOVE_TEXT)]