def test_parse_reference(): """Test parse_reference by asserting that the output is correct and matches the input data. """ ffile = f.definition_elems('flatFile', 'filename1', reference='def1') fdef = f.definition_elems('flatFileDefinition', 'def1', reference='type1') assert a.parse_reference(ffile) == 'def1' assert a.parse_reference(fdef) == 'type1'
def test_sections_count(): """Test sections_count by asserting that the number of sections counted matches the testdata input. """ file1 = f.definition_elems('flatFile', 'file1', reference='def1') file2 = f.definition_elems('flatFile', 'file2', reference='def2') file3 = f.definition_elems('flatFile', 'file3', reference='def3') xml = a.addml(child_elements=[file1, file2, file3]) assert a.sections_count(xml, 'flatFile') == 3
def test_find_section_by_name_fail(): """Test that the find_section_by_name function returns None if no section matches the name. """ file1 = f.definition_elems('flatFile', 'file1', reference='def1') file2 = f.definition_elems('flatFile', 'file2', reference='def2') file3 = f.definition_elems('flatFile', 'file3', reference='def3') xml = a.addml(child_elements=[file1, file2, file3]) ffile = a.find_section_by_name(xml, 'flatFile', 'filer4') assert ffile is None
def test_flatfiledefinition_count(): """Test flatfiledefinition_count by asserting that the number of counted sections matches the testdata. """ file1 = f.definition_elems('flatFile', 'file1', reference='def1') file2 = f.definition_elems('flatFile', 'file2', reference='def2') file3 = f.definition_elems('flatFile', 'file3', reference='def3') def1 = f.definition_elems('flatFileDefinition', 'def1', reference='type1') def2 = f.definition_elems('flatFileDefinition', 'def2', reference='type2') xml = a.addml(child_elements=[file1, file2, file3, def1, def2]) assert f.flatfiledefinition_count(xml) == 2
def test_find_section_by_name(): """Test find_section_by_name by asserting that the correct section and correct attribute value is returned from the testdata. """ file1 = f.definition_elems('flatFile', 'file1', reference='def1') file2 = f.definition_elems('flatFile', 'file2', reference='def2') file3 = f.definition_elems('flatFile', 'file3', reference='def3') xml = a.addml(child_elements=[file1, file2, file3]) ffile = a.find_section_by_name(xml, 'flatFile', 'file2') assert ffile.tag == '{http://www.arkivverket.no/standarder/addml}flatFile' assert ffile.get('definitionReference') == 'def2'
def test_iter_sections(): """Test iter_sections by asserting that all relevant sections are iterated through. """ file1 = f.definition_elems('flatFile', 'file1', reference='def1') file2 = f.definition_elems('flatFile', 'file2', reference='def2') file3 = f.definition_elems('flatFile', 'file3', reference='def3') xml = a.addml(child_elements=[file1, file2, file3]) i = 0 for iter_elem in a.iter_sections(xml, 'flatFile'): i = i + 1 assert iter_elem.get('name') == 'file' + str(i) assert i == 3
def test_definition_elems_flatfile(): """Tests the definition_elems function by comparing test data output with a predefined string. """ xml = """<addml:flatFile xmlns:addml="http://www.arkivverket.no/standarder/addml" name="file1" definitionReference="def1"><addml:properties><addml:property name="prop1"></addml:property></addml:properties></addml:flatFile>""" fprop = f.definition_elems('property', 'prop1') fprops = f.wrapper_elems('properties', child_elements=[fprop]) ffile = f.definition_elems('flatFile', 'file1', reference='def1', child_elements=[fprops]) assert h.compare_trees(ET.fromstring(xml), ffile) is True
def test_iter_flatfiledefinitions(): """Test iter_flatfiledefinitions by asserting that only the relevant sections are iterated through from the testdata. """ file1 = f.definition_elems('flatFile', 'file1', reference='def1') file2 = f.definition_elems('flatFile', 'file2', reference='def2') file3 = f.definition_elems('flatFile', 'file3', reference='def3') def1 = f.definition_elems('flatFileDefinition', 'def1', reference='type1') def2 = f.definition_elems('flatFileDefinition', 'def2', reference='type2') xml = a.addml(child_elements=[file1, file2, file3, def1, def2]) i = 0 for iter_elem in f.iter_flatfiledefinitions(xml): i = i + 1 assert iter_elem.get('name') == 'def' + six.text_type(i) assert i == 2
def test_definition_elems_removeref(): """Tests that the definition_elems function doesn't write an typeReference if it is forbidden in the element. """ fftype = f.definition_elems('flatFileType', 'type1', reference='test') assert list(fftype.attrib.keys()) == ['name']
def test_wrapper_elems_fail(): """Tests that the wrapper_elems function doesn't write data if the supplied tag is unsupported. """ file1 = f.definition_elems('flatFile', 'file1', reference='def1') wrapper_elem = f.wrapper_elems('flatFyles', child_elements=[file1]) assert wrapper_elem is None
def test_wrapper_elems_ok(): """Tests the wrapper_elems function by comparing test data output with a predefined string. """ xml = """<addml:flatFiles xmlns:addml="http://www.arkivverket.no/standarder/addml"><addml:flatFile name="file1" definitionReference="def1"></addml:flatFile><addml:flatFile name="file2" definitionReference="def2"></addml:flatFile><addml:flatFile name="file3" definitionReference="def3"></addml:flatFile></addml:flatFiles>""" file1 = f.definition_elems('flatFile', 'file1', reference='def1') file2 = f.definition_elems('flatFile', 'file2', reference='def2') file3 = f.definition_elems('flatFile', 'file3', reference='def3') wrapper_elem = f.wrapper_elems('flatFiles', child_elements=[file1, file2, file3]) assert h.compare_trees(ET.fromstring(xml), wrapper_elem) is True
def test_definition_elems_noname(): """Tests that the definition_elems function writes the definitionReference or typeReference attribute to an element if it isn't supplied but is mandatory. """ fidef = f.definition_elems('fieldDefinition', 'fidef1') assert list(fidef.attrib.keys()) == ['name', 'typeReference'] assert fidef.get('typeReference')
def test_definition_elems_fail(): """Tests that the definition_elems function doesn't write data if the supplied tag is unsupported. """ file1 = f.definition_elems('flatFyle', 'file1', reference='def1') assert file1 is None