Exemple #1
0
 def metadata_bus_2_params(self, metadata_xml: CXml, params: dict):
     metadata_list = metadata_xml.xpath('{0}/*'.format(
         self.Path_MD_Bus_Root))
     for metadata_item in metadata_list:
         metadata_item_name = CXml.get_element_name(
             metadata_item).lower().strip()
         metadata_item_value = CXml.get_element_text(
             metadata_item).lower().strip()
         params[metadata_item_name] = metadata_item_value
Exemple #2
0
 def test_is_element_comment(self):
     """
     判断一个节点是否是备注
     """
     xml_content = '''<root name="hello world"><element>hello</element></root>'''
     xml = CXml()
     xml.load_xml(xml_content)
     element = xml.xpath('/root/element')[0]
     flag = xml.is_element_comment(element)
     assert flag is False
Exemple #3
0
 def test_element_attr_exist(self):
     """
     设置一个节点的文本
     :return:
     """
     xml_content = '''<root name="hello world"><element hello="中国"></element><element hello="美国"></element></root>'''
     xml = CXml()
     xml.load_xml(xml_content)
     element = xml.xpath('/root/element')[1]
     assert CXml.attr_exist(element, 'hello', False)
Exemple #4
0
 def test_get_element_name(self):
     """
     获取节点的名称
     :return:
     """
     xml_content = '''<root name="hello world"><element>hello</element></root>'''
     xml = CXml()
     xml.load_xml(xml_content)
     element = xml.xpath('/root/element')[0]
     name = CXml.get_element_name(element)
     assert name == 'element'
Exemple #5
0
 def test_get_element_text(self):
     """
     获取一个节点的文本
     :return:
     """
     xml_content = '''<root name="hello world"><element>world</element></root>'''
     xml = CXml()
     xml.load_xml(xml_content)
     element = xml.xpath('/root/element')[0]
     text = CXml.get_element_text(element)
     assert text == 'world'
Exemple #6
0
 def test_set_element_text(self):
     """
     设置一个节点的文本
     :return:
     """
     xml_content = '''<root name="hello world"></root>'''
     xml = CXml()
     xml.load_xml(xml_content)
     element = xml.xpath('/root')[0]
     CXml.set_element_text(element, 'hello')
     assert CXml.get_element_xml(element) == '<root name="hello world"><![CDATA[hello]]></root>'
Exemple #7
0
 def test_get_attr(self):
     """
     获取一个属性的值, 如果属性不存在, 则返回默认值
     :return:
     """
     xml_content = '''<root name="hello world"><element hello="中国"></element><element hello="美国"></element></root>'''
     xml = CXml()
     xml.load_xml(xml_content)
     element = xml.xpath('/root/element')[1]
     value = CXml.get_attr(element, 'Hello', "null")
     assert value == '美国'