Example #1
0
 def test_to_string(self):
     def_list = DefinitionList(self.definitions)
     text = '<wrap>{0}</wrap>'.format(def_list)
     copy = DefinitionList()
     for lxml_definition in list(etree.XML(text)):
         copy.add_definition(Definition.from_lxml_element(lxml_definition))
     self.assertEqual(def_list, copy)
Example #2
0
 def __init__(self,
              mime,
              handler=None,
              param=None,
              extensions=[],
              path=None,
              filters=[],
              self_executed=None,
              definitions=[]):
     '''Creates new MIMEType with specified attributes. extension, filter and
     definitions are expected to be iterable.'''
     self.set_mime(mime)
     self.set_handler(handler)
     self.set_param(param)
     self.extensions = set()
     for extension in extensions:
         self.add_extension(extension)
     self.set_path(path)
     self.filters = []
     for filter in filters:
         self.add_filter(filter)
     self.set_self_executed(self_executed)
     self.definitions = DefinitionList(definitions)
     self.custom = []
     self.custom_attrib = {}
Example #3
0
 def test_search_by_name(self):
     def_list = DefinitionList()
     self.assertEqual(None, def_list.search_by_name('x'))
     element_0 = DefinitionElement('x')
     def_list.add_definition(element_0)
     self.assertEqual(element_0, def_list.search_by_name('x'))
     element_1 = DefinitionElement('x')
     def_list.add_definition(element_1)
     self.assertEqual(element_1, def_list.search_by_name('x'))
     element_2 = DefinitionElement('x')
     tree_1 = DefinitionTree('t', definitions = [element_2])
     self.assertEqual(element_2, def_list.search_by_name('x'))
     def_list.add_definition(element_1)
     self.assertEqual(element_1, def_list.search_by_name('x'))
Example #4
0
 def test_definitions(self):
     def_list = DefinitionList()
     self.assertEqual([], def_list.get_definitions())
     counter = 0
     for definition in self.definitions:
         def_list.add_definition(definition)
         counter += 1
         self.assertEqual(self.definitions[:counter],
                          def_list.get_definitions())
     for counter in xrange(len(self.definitions)):
         self.assertEqual(self.definitions[counter],
                          def_list.get_definition(counter))
     def_list.add_definition(DefinitionElement('test'), 1)
     self.assertEqual(DefinitionElement('test'), def_list.get_definition(1))
     def_list.remove_definition(1)
     self.assertEqual(self.definitions, def_list.get_definitions())
     for counter in xrange(len(self.definitions)):
         def_list.remove_definition(0)
         self.assertEqual(self.definitions[counter + 1:],
                          def_list.get_definitions())
Example #5
0
 def test_equality(self):
     self.assertEqual(DefinitionList(self.definitions),
                      DefinitionList(self.definitions))
     self.assertNotEqual(DefinitionList(), DefinitionList(self.definitions))
     self.assertNotEqual(DefinitionList(), 'other type')
Example #6
0
 def test_creation(self):
     def_list = DefinitionList()
     def_list = DefinitionList(self.definitions)
Example #7
0
 def __init__(self, definitions = []):
     self.definitions = DefinitionList(definitions)