public function testDeleteOlder() { $time = time(); /** @var CM_Model_StreamChannel_Video $streamChannel */ $streamChannelsDeleted = array(); $archivesDeleted = array(); /** @var $filesDeleted CM_File[] */ $filesDeleted = array(); for ($i = 0; $i < 2; $i++) { $streamChannel = CMTest_TH::createStreamChannel(); $streamChannel->setThumbnailCount(4); $streamChannelsDeleted[] = $streamChannel; $archive = CMTest_TH::createStreamChannelVideoArchive($streamChannel); $archivesDeleted[] = $archive; $filesDeleted = array_merge($filesDeleted, $this->_createArchiveFiles($archive)); } $streamChannelsNotDeleted = array(); $archivesNotDeleted = array(); /** @var $filesNotDeleted CM_File[] */ $filesNotDeleted = array(); $streamChannel = CMTest_TH::createStreamChannel(); $streamChannel = $this->getMock('CM_Model_StreamChannel_Video', array('getType'), array($streamChannel->getId())); $streamChannel->expects($this->any())->method('getType')->will($this->returnValue(3)); $streamChannelsNotDeleted[] = $streamChannel; $archive = CMTest_TH::createStreamChannelVideoArchive($streamChannel); $archivesNotDeleted[] = $archive; $filesNotDeleted = array_merge($filesNotDeleted, $this->_createArchiveFiles($archive)); CMTest_TH::timeForward(20); for ($i = 0; $i < 3; $i++) { $streamChannel = CMTest_TH::createStreamChannel(); $streamChannel->setThumbnailCount(4); $streamChannelsNotDeleted[] = $streamChannel; $archive = CMTest_TH::createStreamChannelVideoArchive($streamChannel); $archivesNotDeleted[] = $archive; $filesNotDeleted = array_merge($filesNotDeleted, $this->_createArchiveFiles($archive)); } foreach ($filesNotDeleted as $file) { $this->assertTrue($file->exists()); } foreach ($filesDeleted as $file) { $this->assertTrue($file->exists()); } CM_Model_StreamChannelArchive_Video::deleteOlder(10, CM_Model_StreamChannel_Video::getTypeStatic()); foreach ($filesNotDeleted as $file) { $this->assertTrue($file->exists()); } foreach ($filesDeleted as $file) { $this->assertFalse($file->exists()); } foreach ($archivesNotDeleted as $archive) { try { CMTest_TH::reinstantiateModel($archive); $this->assertTrue(true); } catch (CM_Exception_Nonexistent $ex) { $this->fail('Young streamchannelArchive deleted'); } } foreach ($archivesDeleted as $archive) { try { CMTest_TH::reinstantiateModel($archive); $this->fail('Old streamchannelArchive not deleted'); } catch (CM_Exception_Nonexistent $ex) { $this->assertTrue(true); } } }