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)
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 = {}
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'))
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())
def test_equality(self): self.assertEqual(DefinitionList(self.definitions), DefinitionList(self.definitions)) self.assertNotEqual(DefinitionList(), DefinitionList(self.definitions)) self.assertNotEqual(DefinitionList(), 'other type')
def test_creation(self): def_list = DefinitionList() def_list = DefinitionList(self.definitions)
def __init__(self, definitions = []): self.definitions = DefinitionList(definitions)