From f33bb0d067c8c9b5bdb2a151a4868e8b9fae322b Mon Sep 17 00:00:00 2001 From: Colin Mollenhour Date: Mon, 20 Jan 2020 10:54:13 -0500 Subject: [PATCH] [impr-#883] Add test method to cache models and fix layout update test --- app/code/core/Mage/Core/Model/App.php | 11 +++++++++++ app/code/core/Mage/Core/Model/Cache.php | 11 +++++++++++ app/code/core/Mage/Core/Model/Layout/Update.php | 2 +- 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/app/code/core/Mage/Core/Model/App.php b/app/code/core/Mage/Core/Model/App.php index 94b55128e292..1da14d3496b5 100644 --- a/app/code/core/Mage/Core/Model/App.php +++ b/app/code/core/Mage/Core/Model/App.php @@ -1183,6 +1183,17 @@ public function saveCache($data, $id, $tags=array(), $lifeTime=false) return $this; } + /** + * Test cache record availability + * + * @param string $id + * @return false|int + */ + public function testCache($id) + { + return $this->_cache->test($id); + } + /** * Remove cache * diff --git a/app/code/core/Mage/Core/Model/Cache.php b/app/code/core/Mage/Core/Model/Cache.php index ebb03f1a4592..de0f10004d0c 100644 --- a/app/code/core/Mage/Core/Model/Cache.php +++ b/app/code/core/Mage/Core/Model/Cache.php @@ -403,6 +403,17 @@ public function save($data, $id, $tags = array(), $lifeTime = null) return $this->getFrontend()->save((string)$data, $this->_id($id), $this->_tags($tags), $lifeTime); } + /** + * Test data + * + * @param string $id + * @return false|int + */ + public function test($id) + { + return $this->getFrontend()->test($this->_id($id)); + } + /** * Remove cached data by identifier * diff --git a/app/code/core/Mage/Core/Model/Layout/Update.php b/app/code/core/Mage/Core/Model/Layout/Update.php index 988ca84c842b..8d516faeca37 100644 --- a/app/code/core/Mage/Core/Model/Layout/Update.php +++ b/app/code/core/Mage/Core/Model/Layout/Update.php @@ -213,7 +213,7 @@ public function saveCache() Mage::app()->saveCache($hash, $this->getCacheId(), $tags, null); // Only save actual XML to cache if it doesn't already exist - if ( ! Mage::app()->getCache()->test(self::XML_KEY_PREFIX . $hash)) { + if ( ! Mage::app()->testCache(self::XML_KEY_PREFIX . $hash)) { Mage::app()->saveCache($str, self::XML_KEY_PREFIX . $hash, $tags, null); } return TRUE;