Example #1
0
 function testNodeReloadWithoutCache()
 {
     //Make node
     $usr = new Entity\User();
     $usr->setFirstName('Arnold');
     $usr->setLastName('Schwarzenegger');
     $usr->setTestId($this->id);
     //Flush it
     ArachnidTest::$arachnid->persist($usr);
     ArachnidTest::$arachnid->flush();
     //Reload it
     $usr = ArachnidTest::$arachnid->reload($usr);
     //Save the id
     $id = $usr->getId();
     //Clear the cache
     self::$arachnid->clearCache();
     //Remake the node, but add the ID
     $usr = new Entity\User();
     $usr->setFirstName('Arnold');
     $usr->setLastName('Schwarzenegger');
     $usr->setTestId($this->id);
     $usr->setId($id);
     //Do the reload
     $usr = ArachnidTest::$arachnid->reload($usr);
     foreach (class_implements(get_class($usr)) as $key => $val) {
         if ($val != 'LRezek\\Arachnid\\Proxy\\Entity') {
             $this->fail();
         }
     }
     $this->assertEquals("Arnold", $usr->getFirstName());
     $this->assertEquals("Schwarzenegger", $usr->getLastName());
     $this->assertEquals($this->id, $usr->getTestId());
 }