diff --git a/src/Panel/CachePanel.php b/src/Panel/CachePanel.php index 70f9f9e91..9c86ca2f0 100644 --- a/src/Panel/CachePanel.php +++ b/src/Panel/CachePanel.php @@ -56,7 +56,8 @@ public function initialize() } elseif (isset($config['className'])) { Cache::drop($name); $instance = new DebugEngine($config, $name, $this->logger); - Cache::setConfig($name, $instance); + $config['className'] = $instance; + Cache::setConfig($name, $config); } if (isset($instance)) { $this->instances[$name] = $instance; diff --git a/tests/TestCase/Panel/CachePanelTest.php b/tests/TestCase/Panel/CachePanelTest.php index 69826bc90..780c93608 100644 --- a/tests/TestCase/Panel/CachePanelTest.php +++ b/tests/TestCase/Panel/CachePanelTest.php @@ -37,7 +37,7 @@ public function setUp(): void { parent::setUp(); $this->panel = new CachePanel(); - Cache::setConfig('debug_kit_test', ['className' => 'Null']); + Cache::setConfig('debug_kit_test', ['className' => 'Null', 'path' => TMP]); } /** @@ -110,4 +110,11 @@ public function testInitializeTwiceNoDoubleProxy() $result2 = Cache::engine('debug_kit_test'); $this->assertSame($result2, $result); } + + public function testInitializePreserveGlobalConfig() + { + $this->panel->initialize(); + $result = Cache::getConfig('debug_kit_test'); + $this->assertEquals($result['path'], TMP); + } }