Exemple #1
0
 function testCloneFilter()
 {
     $mdFactory = new MockDocman_MetadataFactory();
     $mdFactory->setReturnValue('isRealMetadata', false);
     $md = new Docman_ListMetadata();
     $md->setLabel('item_type');
     $srcFilter = new Docman_FilterItemType($md);
     $dstReport = new Docman_Report();
     $dstReport->setGroupId(123);
     $filterFactory = new Docman_FilterFactoryTestVersion($this);
     $gsMd = new Docman_Metadata();
     $filterFactory->setReturnValue('getGlobalSearchMetadata', $gsMd);
     $gsMd->setLabel('global_txt');
     $itMd = new Docman_ListMetadata();
     $filterFactory->setReturnValue('getItemTypeSearchMetadata', $itMd);
     $itMd->setLabel('item_type');
     $itMd->setUseIt(PLUGIN_DOCMAN_METADATA_USED);
     $metadataMapping = array('md' => array(), 'love' => array());
     $dstFilterFactory = new Docman_FilterFactoryTestVersion($this);
     $filterFactory->setReturnValue('getFilterFactory', $dstFilterFactory);
     $filterFactory->cloneFilter($srcFilter, $dstReport, $metadataMapping);
     $dstFilterFactory->expectOnce('createFromMetadata');
     $filterFactory->expectOnce('cloneFilterValues');
     $dstFilterFactory->expectOnce('createFilter');
 }
 function testWhenMetaDataDefinedButNotAvailable()
 {
     $dmdf = new MockDocman_MetadataFactory($this);
     $dmdf->setReturnValue('getLabelFromId', 'field_105');
     $dmdf->setReturnValue('getFromLabel', null);
     $dwmf = new DocmanWatermark_MetadataFactoryTestMetadataRetrieval($this);
     $dwmf->setReturnValue('getMetadataIdFromGroupId', 105);
     $dwmf->setReturnValue('getDocman_MetadataFactory', $dmdf);
     $returnedMd = $dwmf->_getWatermarkedMetadata(101);
     $this->assertNull($returnedMd);
 }
Exemple #3
0
 /**
  * Ensure that data from one call doesn't override data of the second call
  */
 function testTwoCallsOfCloneOneMetadataList()
 {
     // Common params
     $dstGroupId = '321';
     $metadataMapping = array();
     $metadataMapping['love'] = array();
     $findIter = new MockArrayIterator($this);
     $findIter->setReturnValue('count', 0);
     // Factory to test
     $srcMdF = new MetadataFactoryMockedForCloneOneMd($this);
     $eventManager = new MockEventManager($this);
     $srcMdF->setReturnReference('_getEventManager', $eventManager);
     // First Call setup
     $srcMd1 = new Docman_ListMetadata();
     $srcMd1->setId(301);
     $srcMd1->setType(PLUGIN_DOCMAN_METADATA_TYPE_LIST);
     $dstMdF1 = new MockDocman_MetadataFactory($this);
     $dstMdF1->setReturnValue('create', 401);
     $dstMdF1->expectOnce('create');
     $dstMdF1->setReturnValue('findByName', $findIter);
     $srcMdF->setReturnReferenceAt(0, '_getMetadataFactory', $dstMdF1);
     $dstLoveF1 = new MockDocman_MetadataListOfValuesElementFactory($this);
     $dstLoveF1->setReturnValue('cloneValues', array(101 => 201, 102 => 202));
     $srcMdF->setReturnReferenceAt(0, '_getListOfValuesElementFactory', $dstLoveF1);
     // Second call setup
     $srcMd2 = new Docman_ListMetadata();
     $srcMd2->setId(302);
     $srcMd2->setType(PLUGIN_DOCMAN_METADATA_TYPE_LIST);
     $dstMdF2 = new MockDocman_MetadataFactory($this);
     $dstMdF2->setReturnValue('create', 402);
     $dstMdF2->expectOnce('create');
     $dstMdF2->setReturnValue('findByName', $findIter);
     $srcMdF->setReturnReferenceAt(1, '_getMetadataFactory', $dstMdF2);
     $dstLoveF2 = new MockDocman_MetadataListOfValuesElementFactory($this);
     $dstLoveF2->setReturnValue('cloneValues', array(103 => 203, 104 => 204));
     $srcMdF->setReturnReferenceAt(1, '_getListOfValuesElementFactory', $dstLoveF2);
     // Run test
     $srcMdF->_cloneOneMetadata($dstGroupId, $srcMd1, $metadataMapping);
     $srcMdF->_cloneOneMetadata($dstGroupId, $srcMd2, $metadataMapping);
     $this->assertEqual($metadataMapping['md'][301], 401);
     $this->assertEqual($metadataMapping['md'][302], 402);
     $this->assertEqual($metadataMapping['love'][101], 201);
     $this->assertEqual($metadataMapping['love'][102], 202);
     $this->assertEqual($metadataMapping['love'][103], 203);
     $this->assertEqual($metadataMapping['love'][104], 204);
 }