Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / web / core / modules / layout_builder / tests / src / Unit / LayoutBuilderRouteEnhancerTest.php
diff --git a/web/core/modules/layout_builder/tests/src/Unit/LayoutBuilderRouteEnhancerTest.php b/web/core/modules/layout_builder/tests/src/Unit/LayoutBuilderRouteEnhancerTest.php
new file mode 100644 (file)
index 0000000..62c4924
--- /dev/null
@@ -0,0 +1,40 @@
+<?php
+
+namespace Drupal\Tests\layout_builder\Unit;
+
+use Drupal\layout_builder\Routing\LayoutBuilderRouteEnhancer;
+use Drupal\Tests\UnitTestCase;
+use Symfony\Cmf\Component\Routing\RouteObjectInterface;
+use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\Routing\Route;
+
+/**
+ * @coversDefaultClass \Drupal\layout_builder\Routing\LayoutBuilderRouteEnhancer
+ * @group layout_builder
+ */
+class LayoutBuilderRouteEnhancerTest extends UnitTestCase {
+
+  /**
+   * @covers ::enhance
+   */
+  public function testEnhanceValidDefaults() {
+    $route = new Route('/the/path', [], [], ['_layout_builder' => TRUE]);
+    $route_enhancer = new LayoutBuilderRouteEnhancer();
+    $defaults = [
+      RouteObjectInterface::ROUTE_OBJECT => $route,
+    ];
+    // Ensure that the 'section_storage' key now contains the value stored for a
+    // given entity type.
+    $expected = [
+      RouteObjectInterface::ROUTE_OBJECT => $route,
+      'is_rebuilding' => TRUE,
+    ];
+    $result = $route_enhancer->enhance($defaults, new Request(['layout_is_rebuilding' => TRUE]));
+    $this->assertEquals($expected, $result);
+
+    $expected['is_rebuilding'] = FALSE;
+    $result = $route_enhancer->enhance($defaults, new Request());
+    $this->assertEquals($expected, $result);
+  }
+
+}