コード例 #1
0
 def test_relate_bottom_up(self):
     s_dt = self.m.select_one('S_DT', xtuml.where_eq(Name='string'))
     s_bparm = self.m.new('S_BPARM', Name='My_Parameter')
     s_ee = self.m.new('S_EE', Name='My_External_Entity', Key_Lett='My_External_Entity')
     pe_pe = self.m.new('PE_PE', Visibility=True, type=5)
     s_brg = self.m.new('S_BRG', Name='My_Bridge_Operation')
     
     self.assertTrue(xtuml.relate(s_bparm, s_dt, 22))
     self.assertTrue(xtuml.relate(s_bparm, s_brg, 21))
     self.assertTrue(xtuml.relate(s_brg, s_dt, 20))
     self.assertTrue(xtuml.relate(s_ee, pe_pe, 8001))
     self.assertTrue(xtuml.relate(s_brg, s_ee, 19))
     
     inst = xtuml.navigate_any(pe_pe).S_EE[8001].S_BRG[19].S_BPARM[21]()
     self.assertEqual(inst, s_bparm)
コード例 #2
0
    def test_relate_bottom_up(self):
        s_dt = self.m.select_one('S_DT', xtuml.where_eq(Name='string'))
        s_bparm = self.m.new('S_BPARM', Name='My_Parameter')
        s_ee = self.m.new('S_EE',
                          Name='My_External_Entity',
                          Key_Lett='My_External_Entity')
        pe_pe = self.m.new('PE_PE', Visibility=True, type=5)
        s_brg = self.m.new('S_BRG', Name='My_Bridge_Operation')

        self.assertTrue(xtuml.relate(s_bparm, s_dt, 22))
        self.assertTrue(xtuml.relate(s_bparm, s_brg, 21))
        self.assertTrue(xtuml.relate(s_brg, s_dt, 20))
        self.assertTrue(xtuml.relate(s_ee, pe_pe, 8001))
        self.assertTrue(xtuml.relate(s_brg, s_ee, 19))

        inst = xtuml.navigate_any(pe_pe).S_EE[8001].S_BRG[19].S_BPARM[21]()
        self.assertEqual(inst, s_bparm)
コード例 #3
0
ファイル: gen_sql_schema.py プロジェクト: perojonsson/pyxtuml
def mk_class(m, o_obj):
    '''
    Create a pyxtuml class from a BridgePoint class.
    '''
    first_filter = lambda selected: not one(selected).O_ATTR[103, 'precedes']()
    o_attr = xtuml.navigate_any(o_obj).O_ATTR[102](first_filter)
    attributes = list()
        
    while o_attr:
        ty = get_attribute_type(o_attr)
        if ty and not one(o_attr).O_BATTR[106].O_DBATTR[107]():
            attributes.append((o_attr.Name, ty))
        else:
            logger.warning('Omitting unsupported attribute %s.%s ' %
                           (o_obj.Key_Lett, o_attr.Name))
            
        o_attr = one(o_attr).O_ATTR[103, 'succeeds']()
            
    return m.define_class(o_obj.Key_Lett, list(attributes), o_obj.Descrip)