def test_splitparts(): """ Check that distinguished names are split correctly """ dnparts = splitparts("SubNetwork=NL1_R,SubNetwork=AHPTUR1,MeContext=AHPTUR1,ManagedElement=1,RncFunction=1,UeRc=9") assert_equal(dnparts[0], "SubNetwork=NL1_R") assert_equal(len(dnparts), 6) assert_equal(dnparts[5], "UeRc=9") dnparts = splitparts("Word=asdf,Writer=qwerty\\,dvorak,Reader=Unicode") assert_equal(dnparts[0], "Word=asdf") assert_equal(len(dnparts), 3) assert_equal(dnparts[2], "Reader=Unicode")
def create_entity(conn, dn): """ :param conn: A psycopg2 connection to a Minerva Directory database. :param dn: The distinguished name of the entity. """ dnparts = splitparts(dn) if len(dnparts) == 0: raise Exception("Invalid DN: '{0}'".format(dn)) with closing(conn.cursor()) as cursor: entity = helpers_v4.create_entity(cursor, dn) conn.commit() return entity