Ejemplo n.º 1
0
    def test_cdm_trait_collection_insert(self):
        manifest = generate_manifest()
        parent_folder = CdmFolderDefinition(manifest.ctx, 'ParentFolder')
        parent_folder.in_document = manifest
        parent_folder._namespace = 'TheNamespace'
        parent_folder._folder_path = 'ParentFolderPath/'

        child_folders = parent_folder.child_folders
        child_folder = CdmFolderDefinition(manifest.ctx, 'ChildFolder1')

        child1 = child_folders.append('child1')
        child2 = child_folders.append('child2')
        child_folder._is_dirty = False

        child_folders.insert(1, child_folder)

        self.assertEqual(3, len(child_folders))
        self.assertTrue(manifest._is_dirty)
        self.assertEqual(child1, child_folders[0])
        self.assertEqual(child_folder, child_folders[1])
        self.assertEqual(child2, child_folders[2])
        self.assertEqual(manifest.ctx, child_folder.ctx)
        self.assertEqual('ChildFolder1', child_folder.name)
        self.assertEqual(parent_folder, child_folder.owner)
        self.assertEqual('TheNamespace', child_folder._namespace)
        self.assertEqual(parent_folder._folder_path + child_folder.name + '/',
                         child_folder._folder_path)
    def test_document_collection_insert(self):
        manifest = generate_manifest('C:\\Root\\Path')
        folder = CdmFolderDefinition(manifest.ctx, 'Folder')
        folder.in_document = manifest
        folder._corpus = manifest.ctx.corpus
        folder._folder_path = 'FolderPath/'
        folder._namespace = 'Namespace'
        document = CdmDocumentDefinition(manifest.ctx, 'DocumentName')

        doc1 = folder.documents.append('doc1')
        doc2 = folder.documents.append('doc2')

        manifest._is_dirty = False

        folder.documents.insert(2, document)
        self.assertTrue(manifest._is_dirty)
        self.assertEqual(3, len(folder.documents))
        self.assertEqual(doc1, folder.documents[0])
        self.assertEqual(doc2, folder.documents[1])
        self.assertEqual(document, folder.documents[2])

        self.assertEqual('FolderPath/', document._folder_path)
        self.assertEqual(folder, document.owner)
        self.assertEqual('Namespace', document._namespace)
        self.assertTrue(document._needs_indexing)
        self.assertEqual(folder, document.owner)
        self.assertTrue(document.name in folder._document_lookup)
        self.assertTrue(manifest.ctx.corpus._document_library._contains((folder, document)))

        folder.documents.insert(2, document)
        self.assertEqual(3, len(folder.documents))
Ejemplo n.º 3
0
    def test_cdm_trait_collection_insert(self):
        manifest = generate_manifest("C:\\Root\\Path")
        parent_folder = CdmFolderDefinition(manifest.ctx, "ParentFolder")
        parent_folder.in_document = manifest
        parent_folder.namespace = "TheNamespace"
        parent_folder.folder_path = "ParentFolderPath/"

        child_folders = parent_folder.child_folders
        child_folder = CdmFolderDefinition(manifest.ctx, "ChildFolder1")

        child1 = child_folders.append("child1")
        child2 = child_folders.append("child2")
        child_folder._is_dirty = False

        child_folders.insert(1, child_folder)

        self.assertEqual(3, len(child_folders))
        self.assertTrue(manifest._is_dirty)
        self.assertEqual(child1, child_folders[0])
        self.assertEqual(child_folder, child_folders[1])
        self.assertEqual(child2, child_folders[2])
        self.assertEqual(manifest.ctx, child_folder.ctx)
        self.assertEqual("ChildFolder1", child_folder.name)
        self.assertEqual(parent_folder, child_folder.owner)
        self.assertEqual("TheNamespace", child_folder.namespace)
        self.assertEqual(parent_folder.folder_path + child_folder.name + "/",
                         child_folder.folder_path)