Exemplo n.º 1
0
 public function testCreateFileWithMongoGridFSFileObject()
 {
     $file = new \Doctrine\MongoDB\GridFSFile(__DIR__ . '/file.txt');
     $image = new File();
     $image->setName('Test');
     $image->setFile($file);
     $profile = new Profile();
     $profile->setFirstName('Jon');
     $profile->setLastName('Wage');
     $profile->setImage($image);
     $this->assertTrue($image->getFile()->isDirty());
     $this->dm->persist($profile);
     $this->dm->flush();
     $this->assertFalse($image->getFile()->isDirty());
     $this->assertSame($file, $image->getFile());
     $this->dm->clear();
     $profile = $this->dm->createQueryBuilder('Documents\\Profile')->getQuery()->getSingleResult();
     $image = $profile->getImage();
     $this->assertInstanceOf('Doctrine\\MongoDB\\GridFSFile', $image->getFile());
     $this->assertEquals('These are the bytes...', $image->getFile()->getBytes());
     $image->getFile()->setFilename(__DIR__ . '/FilesTest.php');
     $this->dm->flush();
     $this->dm->clear();
     $profile = $this->dm->createQueryBuilder('Documents\\Profile')->getQuery()->getSingleResult();
     $image = $profile->getImage();
     $this->assertEquals('Test', $image->getName());
     $this->assertEquals(__DIR__ . '/FilesTest.php', $image->getFile()->getFilename());
     $this->assertEquals(file_get_contents(__DIR__ . '/FilesTest.php'), $image->getFile()->getBytes());
     $image->getFile()->setBytes('test');
     $this->dm->flush();
     $this->dm->clear();
     $profile = $this->dm->createQueryBuilder('Documents\\Profile')->getQuery()->getSingleResult();
     $image = $profile->getImage();
     $this->assertEquals('test', $image->getFile()->getBytes());
 }
Exemplo n.º 2
0
 public function testFiles()
 {
     $image = new File();
     $image->setName('Test');
     $image->setFile(__DIR__ . '/file.txt');
     $profile = new Profile();
     $profile->setFirstName('Jon');
     $profile->setLastName('Wage');
     $profile->setImage($image);
     $this->dm->persist($profile);
     $this->dm->flush();
     $this->assertEquals('These are the bytes...', $image->getFile()->getBytes());
     $image->setName('testing');
     $this->dm->flush();
     $this->dm->clear();
     $image = $this->dm->find('Documents\\File', $image->getId());
     $this->assertEquals('testing', $image->getName());
     $this->assertEquals('These are the bytes...', $image->getFile()->getBytes());
 }
Exemplo n.º 3
0
 public function testLazyLoadReference()
 {
     $user = new User();
     $profile = new Profile();
     $profile->setFirstName('Jonathan');
     $profile->setLastName('Wage');
     $user->setProfile($profile);
     $user->setUsername('jwage');
     $this->dm->persist($user);
     $this->dm->flush();
     $this->dm->clear();
     $query = $this->dm->createQuery('Documents\\User')->where('id', $user->getId());
     $user = $query->getSingleResult();
     $profile = $user->getProfile();
     $this->assertTrue($profile instanceof \Proxies\DocumentsProfileProxy);
     $profile->getFirstName();
     $this->assertEquals('Jonathan', $profile->getFirstName());
     $this->assertEquals('Wage', $profile->getLastName());
 }