Exemple #1
0
    def test_multiple_indices(self):
        """
        +---+       +---+
        | C +--c--->| H |
        +---+--e--->+-+-+
                      ^
        +---+         |
        | E +----e----+
        +---+
        """
        [host_id, extension_id,
         child_id] = all_ids = ['host', 'extension', 'child']
        child_tree = IndexTree(indices={
            child_id: convert_list_to_dict([host_id]),
        })
        extension_tree = IndexTree(
            indices={
                extension_id: convert_list_to_dict([host_id]),
                child_id: convert_list_to_dict([host_id]),
            })

        child_dependencies = IndexTree.get_all_dependencies(
            child_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), child_dependencies)

        extension_dependencies = IndexTree.get_all_dependencies(
            extension_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), extension_dependencies)
    def test_child_and_extension(self):
        """
         +---+       +---+
         | C +--c--->| H |
         +-+-+       +-+-+
           ^           ^
           |e          |e
         +-+-+       +-+-+
         |E2 |       |E1 |
         +---+       +---+
        """
        [host_id, extension_id, child_id, extension_id_2] = all_ids = ['host', 'extension', 'child', 'extension_2']
        child_tree = IndexTree(indices={
            child_id: convert_list_to_dict([host_id]),
        })
        extension_tree = IndexTree(indices={
            extension_id: convert_list_to_dict([host_id]),
            extension_id_2: convert_list_to_dict([child_id]),
        })

        extension_dependencies = IndexTree.get_all_dependencies(extension_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), extension_dependencies)
        host_dependencies = IndexTree.get_all_dependencies(host_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), host_dependencies)
        child_dependencies = IndexTree.get_all_dependencies(child_id, child_tree, extension_tree)
        self.assertEqual(set([child_id, extension_id_2]), child_dependencies)
Exemple #3
0
    def test_child_and_extension(self):
        """
         +---+       +---+
         | C +--c--->| H |
         +-+-+       +-+-+
           ^           ^
           |e          |e
         +-+-+       +-+-+
         |E2 |       |E1 |
         +---+       +---+
        """
        [host_id, extension_id, child_id, extension_id_2
         ] = all_ids = ['host', 'extension', 'child', 'extension_2']
        child_tree = IndexTree(indices={
            child_id: convert_list_to_dict([host_id]),
        })
        extension_tree = IndexTree(
            indices={
                extension_id: convert_list_to_dict([host_id]),
                extension_id_2: convert_list_to_dict([child_id]),
            })

        extension_dependencies = IndexTree.get_all_dependencies(
            extension_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), extension_dependencies)
        host_dependencies = IndexTree.get_all_dependencies(
            host_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), host_dependencies)
        child_dependencies = IndexTree.get_all_dependencies(
            child_id, child_tree, extension_tree)
        self.assertEqual(set([child_id, extension_id_2]), child_dependencies)
    def test_extension_long_chain(self):
        [host_id, extension_id, extension_id_2, extension_id_3] = all_ids = [
            'host', 'extension', 'extension_2', 'extension_3']

        extension_tree = IndexTree(indices={
            extension_id: convert_list_to_dict([host_id]),
            extension_id_2: convert_list_to_dict([extension_id]),
            extension_id_3: convert_list_to_dict([extension_id_2]),
        })
        child_tree = IndexTree()
        extension_dependencies = IndexTree.get_all_dependencies(extension_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), extension_dependencies)
        host_dependencies = IndexTree.get_all_dependencies(host_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), host_dependencies)
Exemple #5
0
    def test_extension_long_chain(self):
        [host_id, extension_id, extension_id_2, extension_id_3] = all_ids = [
            'host', 'extension', 'extension_2', 'extension_3']

        extension_tree = IndexTree(indices={
            extension_id: convert_list_to_dict([host_id]),
            extension_id_2: convert_list_to_dict([extension_id]),
            extension_id_3: convert_list_to_dict([extension_id_2]),
        })
        child_tree = IndexTree()
        extension_dependencies = IndexTree.get_all_dependencies(extension_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), extension_dependencies)
        host_dependencies = IndexTree.get_all_dependencies(host_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), host_dependencies)
 def test_simple_extension(self):
     [host_id, extension_id] = all_ids = ['host', 'extension']
     extension_tree = IndexTree(indices={
         extension_id: convert_list_to_dict([host_id]),
     })
     child_tree = IndexTree()
     extension_dependencies = IndexTree.get_all_dependencies(extension_id, child_tree, extension_tree)
     self.assertEqual(extension_dependencies, set(all_ids))
Exemple #7
0
 def test_simple_linear_structure(self):
     [grandparent_id, parent_id, child_id] = all_cases = ['grandparent', 'parent', 'child']
     tree = IndexTree(indices={
         child_id: convert_list_to_dict([parent_id]),
         parent_id: convert_list_to_dict([grandparent_id]),
     })
     cases = IndexTree.get_all_dependencies(grandparent_id, tree, IndexTree())
     self.assertEqual(cases, set(all_cases))
Exemple #8
0
 def test_simple_extension(self):
     [host_id, extension_id] = all_ids = ['host', 'extension']
     extension_tree = IndexTree(indices={
         extension_id: convert_list_to_dict([host_id]),
     })
     child_tree = IndexTree()
     extension_dependencies = IndexTree.get_all_dependencies(extension_id, child_tree, extension_tree)
     self.assertEqual(extension_dependencies, set(all_ids))
Exemple #9
0
 def test_multiple_children(self):
     [grandparent_id, parent_id, child_id_1, child_id_2] = all_cases = ['rickard', 'ned', 'bran', 'arya']
     tree = IndexTree(indices={
         child_id_1: convert_list_to_dict([parent_id]),
         child_id_2: convert_list_to_dict([parent_id]),
         parent_id: convert_list_to_dict([grandparent_id]),
     })
     cases = IndexTree.get_all_dependencies(grandparent_id, tree, IndexTree())
     self.assertEqual(cases, set(all_cases))
    def test_multiple_indices(self):
        """
        +---+       +---+
        | C +--c--->| H |
        +---+--e--->+-+-+
                      ^
        +---+         |
        | E +----e----+
        +---+
        """
        [host_id, extension_id, child_id] = all_ids = ['host', 'extension', 'child']
        child_tree = IndexTree(indices={
            child_id: convert_list_to_dict([host_id]),
        })
        extension_tree = IndexTree(indices={
            extension_id: convert_list_to_dict([host_id]),
            child_id: convert_list_to_dict([host_id]),
        })

        child_dependencies = IndexTree.get_all_dependencies(child_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), child_dependencies)

        extension_dependencies = IndexTree.get_all_dependencies(extension_id, child_tree, extension_tree)
        self.assertEqual(set(all_ids), extension_dependencies)