From 55e519032fba3927ee9729c5b912fbd1e9c585d2 Mon Sep 17 00:00:00 2001
From: Lisa Ridley <l.ridley@vardot.com>
Date: Sun, 29 Dec 2024 19:09:10 -0500
Subject: [PATCH] Issue #3496496 by lhridley: Fix mocking in existing tests so
 that test objects can be created and tests and proceed.

---
 tests/src/Kernel/CollectionOptimizerTest.php                | 5 +++--
 tests/src/Unit/Flysystem/Adapter/CacheItemBackendTest.php   | 4 +++-
 tests/src/Unit/Flysystem/Adapter/DrupalCacheAdapterTest.php | 4 +++-
 tests/src/Unit/Plugin/FlysystemPluginManagerTest.php        | 5 ++++-
 4 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/tests/src/Kernel/CollectionOptimizerTest.php b/tests/src/Kernel/CollectionOptimizerTest.php
index 9fb14f7..a36b9d1 100644
--- a/tests/src/Kernel/CollectionOptimizerTest.php
+++ b/tests/src/Kernel/CollectionOptimizerTest.php
@@ -3,8 +3,8 @@
 namespace Drupal\Tests\flysystem\Kernel;
 
 use Drupal\Core\Asset\AssetCollectionGrouperInterface;
+use Drupal\Core\Asset\AssetOptimizerInterface;
 use Drupal\Core\Asset\CssOptimizer;
-use Drupal\Core\Asset\JsOptimizer;
 use Drupal\Core\State\StateInterface;
 use Drupal\flysystem\Asset\AssetDumper;
 use Drupal\flysystem\Asset\CssCollectionOptimizer;
@@ -75,8 +75,9 @@ class CollectionOptimizerTest extends KernelTestBase {
     $grouper = $this->prophesize(AssetCollectionGrouperInterface::class);
     $dumper = $this->prophesize(AssetDumper::class);
     $state = $this->prophesize(StateInterface::class);
+    $jsOptimizer = $this->prophesize(AssetOptimizerInterface::class);
 
-    $optimizer = new JsCollectionOptimizer($grouper->reveal(), new JsOptimizer(), $dumper->reveal(), $state->reveal(), $this->container->get('file_system'));
+    $optimizer = new JsCollectionOptimizer($grouper->reveal(), $jsOptimizer->reveal(), $dumper->reveal(), $state->reveal(), $this->container->get('file_system'));
     $optimizer->deleteAll();
 
     foreach ($this->jsFilesUnderTest() as $js_file => $expired) {
diff --git a/tests/src/Unit/Flysystem/Adapter/CacheItemBackendTest.php b/tests/src/Unit/Flysystem/Adapter/CacheItemBackendTest.php
index 6c23567..3d52651 100644
--- a/tests/src/Unit/Flysystem/Adapter/CacheItemBackendTest.php
+++ b/tests/src/Unit/Flysystem/Adapter/CacheItemBackendTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\flysystem\Unit\Flysystem\Adapter;
 
+use Drupal\Component\Datetime\TimeInterface;
 use Drupal\Core\Cache\MemoryBackend;
 use Drupal\flysystem\Flysystem\Adapter\CacheItem;
 use Drupal\flysystem\Flysystem\Adapter\CacheItemBackend;
@@ -36,7 +37,8 @@ class CacheItemBackendTest extends UnitTestCase {
    */
   public function setUp(): void {
     parent::setUp();
-    $this->cacheBackend = new MemoryBackend('foo');
+    $time = $this->createMock(TimeInterface::class);
+    $this->cacheBackend = new MemoryBackend($time);
     $this->cacheItemBackend = new CacheItemBackend('test-scheme', $this->cacheBackend);
   }
 
diff --git a/tests/src/Unit/Flysystem/Adapter/DrupalCacheAdapterTest.php b/tests/src/Unit/Flysystem/Adapter/DrupalCacheAdapterTest.php
index 0b6d04e..04bc7cb 100644
--- a/tests/src/Unit/Flysystem/Adapter/DrupalCacheAdapterTest.php
+++ b/tests/src/Unit/Flysystem/Adapter/DrupalCacheAdapterTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\flysystem\Unit\Flysystem\Adapter;
 
+use Drupal\Component\Datetime\TimeInterface;
 use Drupal\Core\Cache\MemoryBackend;
 use Drupal\flysystem\Flysystem\Adapter\CacheItemBackend;
 use Drupal\flysystem\Flysystem\Adapter\DrupalCacheAdapter;
@@ -59,7 +60,8 @@ class DrupalCacheAdapterTest extends UnitTestCase {
    */
   public function setUp(): void {
     parent::setUp();
-    $this->cacheItemBackend = new CacheItemBackend(static::SCHEME, new MemoryBackend('foo'));
+    $time = $this->prophesize(TimeInterface::class)->reveal();
+    $this->cacheItemBackend = new CacheItemBackend(static::SCHEME, new MemoryBackend($time));
     $this->adapter = $this->prophesize(AdapterInterface::class);
     $this->cacheAdapter = new DrupalCacheAdapter(static::SCHEME, $this->adapter->reveal(), $this->cacheItemBackend);
   }
diff --git a/tests/src/Unit/Plugin/FlysystemPluginManagerTest.php b/tests/src/Unit/Plugin/FlysystemPluginManagerTest.php
index ef9f683..84a93af 100644
--- a/tests/src/Unit/Plugin/FlysystemPluginManagerTest.php
+++ b/tests/src/Unit/Plugin/FlysystemPluginManagerTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\flysystem\Unit\Plugin;
 
+use Drupal\Component\Datetime\TimeInterface;
 use Drupal\Core\Cache\MemoryBackend;
 use Drupal\Core\Extension\ModuleHandlerInterface;
 use Drupal\flysystem\Plugin\FlysystemPluginManager;
@@ -18,9 +19,11 @@ class FlysystemPluginManagerTest extends UnitTestCase {
    */
   public function test() {
     $namespaces = new \ArrayObject();
-    $cache_backend = new MemoryBackend('bin');
+    $time = $this->createMock(TimeInterface::class);
+    $cache_backend = new MemoryBackend($time);
     $module_handle = $this->createMock(ModuleHandlerInterface::class);
 
+    //$cache_backend
     $manager = new FlysystemPluginManager($namespaces, $cache_backend, $module_handle);
     $this->assertSame('missing', $manager->getFallbackPluginId('beep'));
     $this->assertIsArray($manager->getDefinitions());
-- 
GitLab