def do_organization_info(ava): """ decription of an organization in the configuration is a dictionary of keys and values, where the values might be tuples: "organization": { "name": ("AB Exempel", "se"), "display_name": ("AB Exempel", "se"), "url": "http://www.example.org" } """ if ava is None: return None org = md.Organization() for dkey, (ckey, klass) in ORG_ATTR_TRANSL.items(): if ckey not in ava: continue if isinstance(ava[ckey], basestring): setattr(org, dkey, [_localized_name(ava[ckey], klass)]) elif isinstance(ava[ckey], list): setattr(org, dkey, [_localized_name(n, klass) for n in ava[ckey]]) else: setattr(org, dkey, [_localized_name(ava[ckey], klass)]) return org
def test_construct_organisation_name(): o = md.Organization() make_vals({ "text": "Exempel AB", "lang": "se" }, md.OrganizationName, o, "organization_name") print o assert str(o) == """<?xml version='1.0' encoding='UTF-8'?>
def organization(): name = md.OrganizationName(lang=CONF.saml.idp_lang, text=CONF.saml.idp_organization_name) display_name = md.OrganizationDisplayName( lang=CONF.saml.idp_lang, text=CONF.saml.idp_organization_display_name) url = md.OrganizationURL(lang=CONF.saml.idp_lang, text=CONF.saml.idp_organization_url) return md.Organization(organization_display_name=display_name, organization_url=url, organization_name=name)