From 02bf7534778566d9c00e0ea0ccf0fbd3c74e04cc Mon Sep 17 00:00:00 2001
From: catch <catch@35733.no-reply.drupal.org>
Date: Fri, 27 Aug 2021 15:13:58 +0100
Subject: [PATCH] Issue #3228634 by Spokje, xjm, paulocs, tim.plunkett,
 Lendude: Move tests for integrations between QuickEdit and other modules into
 QuickEdit so that it can more easily be moved into contrib

---
 ...diaEmbedFilterDisabledIntegrationsTest.php | 21 +-------
 .../EditorIntegrationLoadingTest.php}         |  6 +--
 .../Functional/LayoutBuilderQuickEditTest.php |  4 +-
 .../QuickEditImageControllerTest.php          |  4 +-
 .../InlineFormErrorsIntegrationTest.php}      |  6 +--
 .../LayoutBuilderQuickEditTest.php            |  5 +-
 .../QuickEditImageEditorTestTrait.php         |  2 +-
 .../QuickEditImageTest.php                    |  5 +-
 .../SettingsTrayIntegrationTest.php}          |  7 +--
 .../src/Kernel/EditorIntegrationTest.php}     |  7 ++-
 ...diaEmbedFilterDisabledIntegrationsTest.php | 53 +++++++++++++++++++
 11 files changed, 77 insertions(+), 43 deletions(-)
 rename core/modules/{editor/tests/src/Functional/QuickEditIntegrationLoadingTest.php => quickedit/tests/src/Functional/EditorIntegrationLoadingTest.php} (97%)
 rename core/modules/{layout_builder => quickedit}/tests/src/Functional/LayoutBuilderQuickEditTest.php (95%)
 rename core/modules/{image => quickedit}/tests/src/Functional/QuickEditImageControllerTest.php (98%)
 rename core/modules/{inline_form_errors/tests/src/FunctionalJavascript/FormErrorHandlerQuickEditTest.php => quickedit/tests/src/FunctionalJavascript/InlineFormErrorsIntegrationTest.php} (94%)
 rename core/modules/{layout_builder => quickedit}/tests/src/FunctionalJavascript/LayoutBuilderQuickEditTest.php (98%)
 rename core/modules/{image => quickedit}/tests/src/FunctionalJavascript/QuickEditImageEditorTestTrait.php (98%)
 rename core/modules/{image => quickedit}/tests/src/FunctionalJavascript/QuickEditImageTest.php (98%)
 rename core/modules/{settings_tray/tests/src/FunctionalJavascript/QuickEditIntegrationTest.php => quickedit/tests/src/FunctionalJavascript/SettingsTrayIntegrationTest.php} (97%)
 rename core/modules/{editor/tests/src/Kernel/QuickEditIntegrationTest.php => quickedit/tests/src/Kernel/EditorIntegrationTest.php} (97%)
 create mode 100644 core/modules/quickedit/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php

diff --git a/core/modules/media/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php b/core/modules/media/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php
index 583250ead46b..b6768b1b0e6f 100644
--- a/core/modules/media/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php
+++ b/core/modules/media/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php
@@ -15,7 +15,6 @@ class MediaEmbedFilterDisabledIntegrationsTest extends MediaEmbedFilterTestBase
    */
   protected static $modules = [
     'contextual',
-    'quickedit',
     // @see media_test_embed_entity_view_alter()
     'media_test_embed',
   ];
@@ -29,16 +28,14 @@ protected function setUp(): void {
     $this->container->get('current_user')
       ->addRole($this->drupalCreateRole([
         'access contextual links',
-        'access in-place editing',
       ]));
   }
 
   /**
    * @covers ::renderMedia
    * @covers ::disableContextualLinks
-   * @dataProvider providerDisabledIntegrations
    */
-  public function testDisabledIntegrations($integration_detection_selector) {
+  public function testDisabledIntegrations() {
     $text = $this->createEmbedCode([
       'data-entity-type' => 'media',
       'data-entity-uuid' => static::EMBEDDED_ENTITY_UUID,
@@ -46,21 +43,7 @@ public function testDisabledIntegrations($integration_detection_selector) {
 
     $this->applyFilter($text);
     $this->assertCount(1, $this->cssSelect('div[data-media-embed-test-view-mode]'));
-    $this->assertCount(0, $this->cssSelect($integration_detection_selector));
-  }
-
-  /**
-   * Data provider for testDisabledIntegrations().
-   */
-  public function providerDisabledIntegrations() {
-    return [
-      'contextual' => [
-        'div[data-media-embed-test-view-mode].contextual-region',
-      ],
-      'quickedit' => [
-        'div[data-media-embed-test-view-mode][data-quickedit-entity-id]',
-      ],
-    ];
+    $this->assertCount(0, $this->cssSelect('div[data-media-embed-test-view-mode].contextual-region'));
   }
 
 }
diff --git a/core/modules/editor/tests/src/Functional/QuickEditIntegrationLoadingTest.php b/core/modules/quickedit/tests/src/Functional/EditorIntegrationLoadingTest.php
similarity index 97%
rename from core/modules/editor/tests/src/Functional/QuickEditIntegrationLoadingTest.php
rename to core/modules/quickedit/tests/src/Functional/EditorIntegrationLoadingTest.php
index 5f9baaa1e4de..bce74ceec80d 100644
--- a/core/modules/editor/tests/src/Functional/QuickEditIntegrationLoadingTest.php
+++ b/core/modules/quickedit/tests/src/Functional/EditorIntegrationLoadingTest.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Drupal\Tests\editor\Functional;
+namespace Drupal\Tests\quickedit\Functional;
 
 use Drupal\Component\Serialization\Json;
 use Drupal\Core\EventSubscriber\MainContentViewSubscriber;
@@ -10,9 +10,9 @@
 /**
  * Tests Quick Edit module integration endpoints.
  *
- * @group editor
+ * @group quickedit
  */
-class QuickEditIntegrationLoadingTest extends BrowserTestBase {
+class EditorIntegrationLoadingTest extends BrowserTestBase {
 
   /**
    * Modules to enable.
diff --git a/core/modules/layout_builder/tests/src/Functional/LayoutBuilderQuickEditTest.php b/core/modules/quickedit/tests/src/Functional/LayoutBuilderQuickEditTest.php
similarity index 95%
rename from core/modules/layout_builder/tests/src/Functional/LayoutBuilderQuickEditTest.php
rename to core/modules/quickedit/tests/src/Functional/LayoutBuilderQuickEditTest.php
index 7da55cc8f90c..e9be41eb8046 100644
--- a/core/modules/layout_builder/tests/src/Functional/LayoutBuilderQuickEditTest.php
+++ b/core/modules/quickedit/tests/src/Functional/LayoutBuilderQuickEditTest.php
@@ -1,13 +1,13 @@
 <?php
 
-namespace Drupal\Tests\layout_builder\Functional;
+namespace Drupal\Tests\quickedit\Functional;
 
 use Drupal\Tests\BrowserTestBase;
 
 /**
  * Tests Layout Builder integration with Quick Edit.
  *
- * @group layout_builder
+ * @group quickedit
  */
 class LayoutBuilderQuickEditTest extends BrowserTestBase {
 
diff --git a/core/modules/image/tests/src/Functional/QuickEditImageControllerTest.php b/core/modules/quickedit/tests/src/Functional/QuickEditImageControllerTest.php
similarity index 98%
rename from core/modules/image/tests/src/Functional/QuickEditImageControllerTest.php
rename to core/modules/quickedit/tests/src/Functional/QuickEditImageControllerTest.php
index 66e386eae259..7642f6fcf0d0 100644
--- a/core/modules/image/tests/src/Functional/QuickEditImageControllerTest.php
+++ b/core/modules/quickedit/tests/src/Functional/QuickEditImageControllerTest.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Drupal\Tests\image\Functional;
+namespace Drupal\Tests\quickedit\Functional;
 
 use Drupal\Component\Serialization\Json;
 use Drupal\Tests\BrowserTestBase;
@@ -10,7 +10,7 @@
 /**
  * Tests the endpoints used by the "image" in-place editor.
  *
- * @group image
+ * @group quickedit
  */
 class QuickEditImageControllerTest extends BrowserTestBase {
 
diff --git a/core/modules/inline_form_errors/tests/src/FunctionalJavascript/FormErrorHandlerQuickEditTest.php b/core/modules/quickedit/tests/src/FunctionalJavascript/InlineFormErrorsIntegrationTest.php
similarity index 94%
rename from core/modules/inline_form_errors/tests/src/FunctionalJavascript/FormErrorHandlerQuickEditTest.php
rename to core/modules/quickedit/tests/src/FunctionalJavascript/InlineFormErrorsIntegrationTest.php
index b64ebf98cc16..fbaaa0a0c66b 100644
--- a/core/modules/inline_form_errors/tests/src/FunctionalJavascript/FormErrorHandlerQuickEditTest.php
+++ b/core/modules/quickedit/tests/src/FunctionalJavascript/InlineFormErrorsIntegrationTest.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Drupal\Tests\inline_form_errors\FunctionalJavascript;
+namespace Drupal\Tests\quickedit\FunctionalJavascript;
 
 use Drupal\FunctionalJavascriptTests\WebDriverTestBase;
 use Drupal\node\Entity\NodeType;
@@ -8,9 +8,9 @@
 /**
  * Tests Inline Form Errors compatibility with Quick Edit.
  *
- * @group inline_form_errors
+ * @group quickedit
  */
-class FormErrorHandlerQuickEditTest extends WebDriverTestBase {
+class InlineFormErrorsIntegrationTest extends WebDriverTestBase {
 
   /**
    * Modules to enable.
diff --git a/core/modules/layout_builder/tests/src/FunctionalJavascript/LayoutBuilderQuickEditTest.php b/core/modules/quickedit/tests/src/FunctionalJavascript/LayoutBuilderQuickEditTest.php
similarity index 98%
rename from core/modules/layout_builder/tests/src/FunctionalJavascript/LayoutBuilderQuickEditTest.php
rename to core/modules/quickedit/tests/src/FunctionalJavascript/LayoutBuilderQuickEditTest.php
index 48e697043bbd..52fbb2fff392 100644
--- a/core/modules/layout_builder/tests/src/FunctionalJavascript/LayoutBuilderQuickEditTest.php
+++ b/core/modules/quickedit/tests/src/FunctionalJavascript/LayoutBuilderQuickEditTest.php
@@ -1,11 +1,10 @@
 <?php
 
-namespace Drupal\Tests\layout_builder\FunctionalJavascript;
+namespace Drupal\Tests\quickedit\FunctionalJavascript;
 
 use Drupal\node\Entity\NodeType;
 use Drupal\Tests\contextual\FunctionalJavascript\ContextualLinkClickTrait;
 use Drupal\Tests\field\Traits\EntityReferenceTestTrait;
-use Drupal\Tests\quickedit\FunctionalJavascript\QuickEditJavascriptTestBase;
 
 /**
  * Tests that Layout Builder functions with Quick Edit.
@@ -13,7 +12,7 @@
  * @covers layout_builder_entity_view_alter()
  * @covers layout_builder_quickedit_render_field()
  *
- * @group layout_builder
+ * @group quickedit
  */
 class LayoutBuilderQuickEditTest extends QuickEditJavascriptTestBase {
 
diff --git a/core/modules/image/tests/src/FunctionalJavascript/QuickEditImageEditorTestTrait.php b/core/modules/quickedit/tests/src/FunctionalJavascript/QuickEditImageEditorTestTrait.php
similarity index 98%
rename from core/modules/image/tests/src/FunctionalJavascript/QuickEditImageEditorTestTrait.php
rename to core/modules/quickedit/tests/src/FunctionalJavascript/QuickEditImageEditorTestTrait.php
index c23342db9a47..f647d88b28df 100644
--- a/core/modules/image/tests/src/FunctionalJavascript/QuickEditImageEditorTestTrait.php
+++ b/core/modules/quickedit/tests/src/FunctionalJavascript/QuickEditImageEditorTestTrait.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Drupal\Tests\image\FunctionalJavascript;
+namespace Drupal\Tests\quickedit\FunctionalJavascript;
 
 /**
  * @see \Drupal\image\Plugin\InPlaceEditor\Image
diff --git a/core/modules/image/tests/src/FunctionalJavascript/QuickEditImageTest.php b/core/modules/quickedit/tests/src/FunctionalJavascript/QuickEditImageTest.php
similarity index 98%
rename from core/modules/image/tests/src/FunctionalJavascript/QuickEditImageTest.php
rename to core/modules/quickedit/tests/src/FunctionalJavascript/QuickEditImageTest.php
index 869cb4efa679..d7736bb8366d 100644
--- a/core/modules/image/tests/src/FunctionalJavascript/QuickEditImageTest.php
+++ b/core/modules/quickedit/tests/src/FunctionalJavascript/QuickEditImageTest.php
@@ -1,15 +1,14 @@
 <?php
 
-namespace Drupal\Tests\image\FunctionalJavascript;
+namespace Drupal\Tests\quickedit\FunctionalJavascript;
 
 use Drupal\file\Entity\File;
 use Drupal\Tests\image\Kernel\ImageFieldCreationTrait;
-use Drupal\Tests\quickedit\FunctionalJavascript\QuickEditJavascriptTestBase;
 use Drupal\Tests\TestFileCreationTrait;
 
 /**
  * @coversDefaultClass \Drupal\image\Plugin\InPlaceEditor\Image
- * @group image
+ * @group quickedit
  */
 class QuickEditImageTest extends QuickEditJavascriptTestBase {
 
diff --git a/core/modules/settings_tray/tests/src/FunctionalJavascript/QuickEditIntegrationTest.php b/core/modules/quickedit/tests/src/FunctionalJavascript/SettingsTrayIntegrationTest.php
similarity index 97%
rename from core/modules/settings_tray/tests/src/FunctionalJavascript/QuickEditIntegrationTest.php
rename to core/modules/quickedit/tests/src/FunctionalJavascript/SettingsTrayIntegrationTest.php
index 7c7313beab07..0b9451c0d5e2 100644
--- a/core/modules/settings_tray/tests/src/FunctionalJavascript/QuickEditIntegrationTest.php
+++ b/core/modules/quickedit/tests/src/FunctionalJavascript/SettingsTrayIntegrationTest.php
@@ -1,17 +1,18 @@
 <?php
 
-namespace Drupal\Tests\settings_tray\FunctionalJavascript;
+namespace Drupal\Tests\quickedit\FunctionalJavascript;
 
 use Drupal\block_content\Entity\BlockContent;
 use Drupal\block_content\Entity\BlockContentType;
+use Drupal\Tests\settings_tray\FunctionalJavascript\SettingsTrayTestBase;
 use Drupal\user\Entity\Role;
 
 /**
  * Test Settings Tray and Quick Edit modules integration.
  *
- * @group settings_tray
+ * @group quickedit
  */
-class QuickEditIntegrationTest extends SettingsTrayTestBase {
+class SettingsTrayIntegrationTest extends SettingsTrayTestBase {
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/editor/tests/src/Kernel/QuickEditIntegrationTest.php b/core/modules/quickedit/tests/src/Kernel/EditorIntegrationTest.php
similarity index 97%
rename from core/modules/editor/tests/src/Kernel/QuickEditIntegrationTest.php
rename to core/modules/quickedit/tests/src/Kernel/EditorIntegrationTest.php
index 9f49d76d0774..ed8d1a8389e1 100644
--- a/core/modules/editor/tests/src/Kernel/QuickEditIntegrationTest.php
+++ b/core/modules/quickedit/tests/src/Kernel/EditorIntegrationTest.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace Drupal\Tests\editor\Kernel;
+namespace Drupal\Tests\quickedit\Kernel;
 
 use Drupal\Component\Serialization\Json;
 use Drupal\Core\EventSubscriber\AjaxResponseSubscriber;
@@ -8,7 +8,6 @@
 use Drupal\editor\Entity\Editor;
 use Drupal\entity_test\Entity\EntityTest;
 use Drupal\quickedit\MetadataGenerator;
-use Drupal\Tests\quickedit\Kernel\QuickEditTestBase;
 use Drupal\quickedit_test\MockQuickEditEntityFieldAccessCheck;
 use Drupal\editor\EditorController;
 use Symfony\Component\HttpFoundation\Request;
@@ -19,9 +18,9 @@
 /**
  * Tests Edit module integration (Editor module's inline editing support).
  *
- * @group editor
+ * @group quickedit
  */
-class QuickEditIntegrationTest extends QuickEditTestBase {
+class EditorIntegrationTest extends QuickEditTestBase {
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/quickedit/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php b/core/modules/quickedit/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php
new file mode 100644
index 000000000000..27cd3830a4de
--- /dev/null
+++ b/core/modules/quickedit/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php
@@ -0,0 +1,53 @@
+<?php
+
+namespace Drupal\Tests\quickedit\Kernel;
+
+use Drupal\Tests\media\Kernel\MediaEmbedFilterTestBase;
+
+/**
+ * Tests that media embed disables certain integrations.
+ *
+ * @coversDefaultClass \Drupal\media\Plugin\Filter\MediaEmbed
+ * @group quickedit
+ */
+class MediaEmbedFilterDisabledIntegrationsTest extends MediaEmbedFilterTestBase {
+
+  /**
+   * {@inheritdoc}
+   */
+  protected static $modules = [
+    'contextual',
+    'quickedit',
+    // @see media_test_embed_entity_view_alter()
+    'media_test_embed',
+  ];
+
+  /**
+   * {@inheritdoc}
+   */
+  protected function setUp(): void {
+    parent::setUp();
+
+    $this->container->get('current_user')
+      ->addRole($this->drupalCreateRole([
+        'access contextual links',
+        'access in-place editing',
+      ]));
+  }
+
+  /**
+   * @covers ::renderMedia
+   * @covers ::disableContextualLinks
+   */
+  public function testDisabledIntegrations() {
+    $text = $this->createEmbedCode([
+      'data-entity-type' => 'media',
+      'data-entity-uuid' => static::EMBEDDED_ENTITY_UUID,
+    ]);
+
+    $this->applyFilter($text);
+    $this->assertCount(1, $this->cssSelect('div[data-media-embed-test-view-mode]'));
+    $this->assertCount(0, $this->cssSelect('div[data-media-embed-test-view-mode][data-quickedit-entity-id]'));
+  }
+
+}
-- 
GitLab