public function testDeepCloneTriplesFile() { /** @var \core_kernel_versioning_Repository $repository */ $repository = \tao_models_classes_FileSourceService::singleton()->addLocalSource("repository test", \tao_helpers_File::createTempDir()); //see if clone item content works /** @var \core_kernel_versioning_File $file */ $file = $repository->spawnFile(__DIR__ . '/sample/test.xml', "test", function ($originalName) { return md5($originalName); }); //see if clone file works $rdfsTriple = new \core_kernel_classes_Triple(); $rdfsTriple->predicate = "http://www.w3.org/1999/02/22-rdf-syntax-ns#value"; $rdfsTriple->object = $file->getUri(); $return = CloneHelper::deepCloneTriples(array($rdfsTriple)); $this->assertCount(1, $return); $this->assertEquals($rdfsTriple->predicate, $return[0]->predicate); $this->assertNotEquals($rdfsTriple->object, $return[0]->object); $fileCopy = new \core_kernel_file_File($return[0]->object); $this->assertFileExists($fileCopy->getAbsolutePath()); $this->assertEquals($file->getLabel(), $fileCopy->getLabel()); $this->assertNotEquals($file->getAbsolutePath(), $fileCopy->getAbsolutePath()); $file->delete(true); $fileCopy->delete(true); $repository->delete(true); }