public function testResultCacheLifeSpan() { // initially NULL = not cached $q = new Doctrine_Query(); $this->assertIdentical(null, $q->getResultCacheLifeSpan()); $q->free(); // 0 = cache forever $this->manager->setAttribute(Doctrine_Core::ATTR_RESULT_CACHE_LIFESPAN, 0); $q = new Doctrine_Query(); $this->assertIdentical(0, $q->getResultCacheLifeSpan()); $q->free(); $this->manager->setAttribute(Doctrine_Core::ATTR_RESULT_CACHE_LIFESPAN, 3600); $q = new Doctrine_Query(); $this->assertIdentical(3600, $q->getResultCacheLifeSpan()); $q->free(); // test that value set on connection level has precedence $this->conn->setAttribute(Doctrine_Core::ATTR_RESULT_CACHE_LIFESPAN, 42); $q = new Doctrine_Query(); $this->assertIdentical(42, $q->getResultCacheLifeSpan()); $q->free(); // test that value set on the query has highest precedence $q = new Doctrine_Query(); $q->useResultCache(true, 1234); $this->assertIdentical(1234, $q->getResultCacheLifeSpan()); $q->setResultCacheLifeSPan(4321); $this->assertIdentical(4321, $q->getResultCacheLifeSpan()); $q->free(); }