From b175ecc4251a322f8c2db4ed6c7ba384142a05d7 Mon Sep 17 00:00:00 2001
From: Alex Pott <alex.a.pott@googlemail.com>
Date: Wed, 10 Dec 2014 12:35:29 +0100
Subject: [PATCH] =?UTF-8?q?Issue=20#2387141=20by=20G=C3=A1bor=20Hojtsy:=20?=
 =?UTF-8?q?Missing=20field=20configuration=20schemas=20across=20core=20tes?=
 =?UTF-8?q?ts?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../editor/src/Tests/EditorAdminTest.php      |  2 +-
 .../src/Tests/QuickEditIntegrationTest.php    | 11 ++++
 .../config/schema/editor_test.schema.yml      |  9 +++
 .../src/Plugin/Editor/UnicornEditor.php       |  4 +-
 .../src/Tests/Views/SelectionTest.php         | 10 ++-
 .../field/src/Tests/DisplayApiTest.php        |  9 +++
 .../FieldImportDeleteUninstallUiTest.php      |  9 +++
 core/modules/field/src/Tests/FormTest.php     | 11 +++-
 .../modules/field/src/Tests/ShapeItemTest.php |  9 +++
 .../Tests/TestItemWithDependenciesTest.php    |  9 +++
 .../schema/field_plugins_test.schema.yml      |  7 ++
 .../config/schema/field_test.schema.yml       | 64 +++++++++++++++++--
 .../field_ui/src/Tests/EntityDisplayTest.php  | 11 +++-
 .../src/Tests/EntityFormDisplayTest.php       |  9 +++
 .../field_ui/src/Tests/ManageDisplayTest.php  | 13 ++--
 .../field_ui/src/Tests/ManageFieldsTest.php   |  9 +++
 .../link/config/schema/link.schema.yml        | 12 +---
 .../FieldFormatter/LinkSeparateFormatter.php  |  2 +-
 core/modules/link/src/Tests/LinkFieldTest.php |  9 +++
 .../d6/FieldInstanceWidgetSettings.php        |  2 +-
 .../d6/MigrateFieldWidgetSettingsTest.php     |  9 +++
 .../src/Tests/OptionsFloatFieldImportTest.php |  9 +++
 ...play.node.options_install_test.default.yml |  4 +-
 ...splay.node.options_install_test.teaser.yml |  4 +-
 .../quickedit/src/Tests/QuickEditTestBase.php | 10 ++-
 .../Entity/EntityQueryRelationshipTest.php    | 13 +++-
 .../config/schema/entity_test.schema.yml      |  8 +++
 27 files changed, 243 insertions(+), 35 deletions(-)
 create mode 100644 core/modules/editor/tests/modules/config/schema/editor_test.schema.yml
 create mode 100644 core/modules/field/tests/modules/field_plugins_test/config/schema/field_plugins_test.schema.yml

diff --git a/core/modules/editor/src/Tests/EditorAdminTest.php b/core/modules/editor/src/Tests/EditorAdminTest.php
index e133a26fb5f2..1e72494623d3 100644
--- a/core/modules/editor/src/Tests/EditorAdminTest.php
+++ b/core/modules/editor/src/Tests/EditorAdminTest.php
@@ -154,7 +154,7 @@ protected function verifyUnicornEditorConfiguration($format_id, $foo = 'bar') {
     $settings = $editor->getSettings();
     $this->assertIdentical($editor->getEditor(), 'unicorn', 'The text editor is configured correctly.');
     $this->assertIdentical($settings['foo'], $foo, 'The text editor settings are stored correctly.');
-    $this->assertIdentical($settings['ponies too'], true, 'The text editor defaults are retrieved correctly.');
+    $this->assertIdentical($settings['ponies_too'], true, 'The text editor defaults are retrieved correctly.');
     $this->assertIdentical($settings['rainbows'], true, 'The text editor defaults added by hook_editor_settings_defaults() are retrieved correctly.');
     $this->assertIdentical($settings['sparkles'], false, 'The text editor defaults modified by hook_editor_settings_defaults_alter() are retrieved correctly.');
     $this->drupalGet('admin/config/content/formats/manage/'. $format_id);
diff --git a/core/modules/editor/src/Tests/QuickEditIntegrationTest.php b/core/modules/editor/src/Tests/QuickEditIntegrationTest.php
index 33077c3414e6..9f70a14a6477 100644
--- a/core/modules/editor/src/Tests/QuickEditIntegrationTest.php
+++ b/core/modules/editor/src/Tests/QuickEditIntegrationTest.php
@@ -24,6 +24,17 @@
  */
 class QuickEditIntegrationTest extends QuickEditTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @todo Altering not schema compatible. https://www.drupal.org/node/2389697
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = FALSE;
+
   /**
    * {@inheritdoc}
    */
diff --git a/core/modules/editor/tests/modules/config/schema/editor_test.schema.yml b/core/modules/editor/tests/modules/config/schema/editor_test.schema.yml
new file mode 100644
index 000000000000..6900e2f416d5
--- /dev/null
+++ b/core/modules/editor/tests/modules/config/schema/editor_test.schema.yml
@@ -0,0 +1,9 @@
+# Schema for the configuration files of the Editor test module.
+
+editor.settings.unicorn:
+  type: mapping
+  label: 'Unicorn settings'
+  mapping:
+    ponies_too:
+      type: string
+      label: 'Ponies too'
diff --git a/core/modules/editor/tests/modules/src/Plugin/Editor/UnicornEditor.php b/core/modules/editor/tests/modules/src/Plugin/Editor/UnicornEditor.php
index fcc2c901f6d0..49644e599248 100644
--- a/core/modules/editor/tests/modules/src/Plugin/Editor/UnicornEditor.php
+++ b/core/modules/editor/tests/modules/src/Plugin/Editor/UnicornEditor.php
@@ -28,7 +28,7 @@ class UnicornEditor extends EditorBase {
    * {@inheritdoc}
    */
   function getDefaultSettings() {
-    return array('ponies too' => TRUE);
+    return array('ponies_too' => TRUE);
   }
 
   /**
@@ -49,7 +49,7 @@ function settingsForm(array $form, FormStateInterface $form_state, EditorEntity
   function getJSSettings(EditorEntity $editor) {
     $js_settings = array();
     $settings = $editor->getSettings();
-    if ($settings['ponies too']) {
+    if ($settings['ponies_too']) {
       $js_settings['ponyModeEnabled'] = TRUE;
     }
     return $js_settings;
diff --git a/core/modules/entity_reference/src/Tests/Views/SelectionTest.php b/core/modules/entity_reference/src/Tests/Views/SelectionTest.php
index e71737c1c604..1fbe5cb54c70 100644
--- a/core/modules/entity_reference/src/Tests/Views/SelectionTest.php
+++ b/core/modules/entity_reference/src/Tests/Views/SelectionTest.php
@@ -16,6 +16,15 @@
  */
 class SelectionTest extends WebTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   public static $modules = array('node', 'views', 'entity_reference', 'entity_reference_test', 'entity_test');
 
   /**
@@ -51,7 +60,6 @@ public function testSelectionHandler() {
       'settings' => array(
         'handler' => 'views',
         'handler_settings' => array(
-          'target_bundles' => array(),
           'view' => array(
             'view_name' => 'test_entity_reference',
             'display_name' => 'entity_reference_1',
diff --git a/core/modules/field/src/Tests/DisplayApiTest.php b/core/modules/field/src/Tests/DisplayApiTest.php
index 4123ab31ee31..513de0bc0986 100644
--- a/core/modules/field/src/Tests/DisplayApiTest.php
+++ b/core/modules/field/src/Tests/DisplayApiTest.php
@@ -16,6 +16,15 @@
  */
 class DisplayApiTest extends FieldUnitTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * The field name to use in this test.
    *
diff --git a/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php b/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
index 939cfc4db7bb..18808187960a 100644
--- a/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
+++ b/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
@@ -18,6 +18,15 @@
  */
 class FieldImportDeleteUninstallUiTest extends FieldTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
diff --git a/core/modules/field/src/Tests/FormTest.php b/core/modules/field/src/Tests/FormTest.php
index 67c8baa51984..fde1f290844c 100644
--- a/core/modules/field/src/Tests/FormTest.php
+++ b/core/modules/field/src/Tests/FormTest.php
@@ -18,6 +18,15 @@
  */
 class FormTest extends FieldTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
@@ -587,7 +596,7 @@ function testHiddenField() {
 
     // Update the field to remove the default value, and switch to the default
     // widget.
-    $this->field->default_value = NULL;
+    $this->field->default_value = array();
     $this->field->save();
     entity_get_form_display($entity_type, $this->field->bundle, 'default')
       ->setComponent($this->field->getName(), array(
diff --git a/core/modules/field/src/Tests/ShapeItemTest.php b/core/modules/field/src/Tests/ShapeItemTest.php
index 548d63e1c73e..05c1606ed37d 100644
--- a/core/modules/field/src/Tests/ShapeItemTest.php
+++ b/core/modules/field/src/Tests/ShapeItemTest.php
@@ -17,6 +17,15 @@
  */
 class ShapeItemTest extends FieldUnitTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
diff --git a/core/modules/field/src/Tests/TestItemWithDependenciesTest.php b/core/modules/field/src/Tests/TestItemWithDependenciesTest.php
index b5ad7e123477..684cc0f0cc13 100644
--- a/core/modules/field/src/Tests/TestItemWithDependenciesTest.php
+++ b/core/modules/field/src/Tests/TestItemWithDependenciesTest.php
@@ -14,6 +14,15 @@
  */
 class TestItemWithDependenciesTest extends FieldUnitTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
diff --git a/core/modules/field/tests/modules/field_plugins_test/config/schema/field_plugins_test.schema.yml b/core/modules/field/tests/modules/field_plugins_test/config/schema/field_plugins_test.schema.yml
new file mode 100644
index 000000000000..a7d58c000993
--- /dev/null
+++ b/core/modules/field/tests/modules/field_plugins_test/config/schema/field_plugins_test.schema.yml
@@ -0,0 +1,7 @@
+field.formatter.settings.field_plugins_test_text_formatter:
+  type: field.formatter.settings.text_trimmed
+  label: 'Test text formatter display format settings'
+
+field.widget.settings.field_plugins_test_text_widget:
+  type: field.widget.settings.text_textfield
+  label: 'Test text field widget settings'
diff --git a/core/modules/field/tests/modules/field_test/config/schema/field_test.schema.yml b/core/modules/field/tests/modules/field_test/config/schema/field_test.schema.yml
index 01b3aa6a4856..0ff333e425d3 100644
--- a/core/modules/field/tests/modules/field_test/config/schema/field_test.schema.yml
+++ b/core/modules/field/tests/modules/field_test/config/schema/field_test.schema.yml
@@ -1,6 +1,14 @@
+field.formatter.settings.field_test_default:
+  type: mapping
+  label: 'Field test default display format settings'
+  mapping:
+    test_formatter_setting:
+      type: string
+      label: 'Test setting'
+
 field.formatter.settings.field_test_multiple:
   type: mapping
-  label: 'field_test display format settings'
+  label: 'Multiple field test display format settings'
   mapping:
     test_formatter_setting_multiple:
       type: string
@@ -9,9 +17,33 @@ field.formatter.settings.field_test_multiple:
       type: boolean
       label: 'Test altering'
 
+field.formatter.settings.field_empty_setting:
+  type: mapping
+  label: 'Empty setting field display format settings'
+  mapping:
+    field_empty_setting:
+      type: string
+      label: 'Test setting'
+
+field.formatter.settings.field_test_with_prepare_view:
+  type: mapping
+  label: 'Field prepare step display format settings'
+  mapping:
+    test_formatter_setting_additional:
+      type: string
+      label: 'Test setting'
+
+field.widget.settings.test_field_widget:
+  type: mapping
+  label: 'Test field widget settings'
+  mapping:
+    test_widget_setting:
+      type: string
+      label: 'Test setting'
+
 field.widget.settings.test_field_widget_multiple:
   type: mapping
-  label: 'field_test display format settings'
+  label: 'Test multiple field widget settings'
   mapping:
     test_widget_setting_multiple:
       type: string
@@ -19,7 +51,7 @@ field.widget.settings.test_field_widget_multiple:
 
 field.storage_settings.test_field:
   type: mapping
-  label: 'Test field settings'
+  label: 'Test field storage settings'
   mapping:
     test_field_storage_setting:
       type: string
@@ -31,14 +63,30 @@ field.storage_settings.test_field:
       type: string
       label: 'An unchangeable field storage setting'
 
+field.storage_settings.test_field_with_dependencies:
+  type: field.storage_settings.test_field
+  label: 'Test field with dependencies storage settings'
+
+field.storage_settings.hidden_test_field:
+  type: field.storage_settings.test_field
+  label: 'Hidden test field storage settings'
+
 field.field_settings.test_field:
   type: mapping
-  label: 'Test field settings'
+  label: 'Test field field settings'
   mapping:
     test_field_setting:
       type: string
       label: 'Test field setting'
 
+field.field_settings.test_field_with_dependencies:
+  type: field.field_settings.test_field
+  label: 'Test field with dependencies field settings'
+
+field.field_settings.hidden_test_field:
+  type: field.field_settings.test_field
+  label: 'Hidden test field field settings'
+
 field.value.test_field:
   type: mapping
   label: 'Default value'
@@ -46,3 +94,11 @@ field.value.test_field:
     value:
       type: label
       label: 'Value'
+
+entity_view_display.third_party.field_test:
+  type: mapping
+  label: 'Field test entity display third party setting'
+  mapping:
+    foo:
+      type: string
+      label: 'Test setting'
diff --git a/core/modules/field_ui/src/Tests/EntityDisplayTest.php b/core/modules/field_ui/src/Tests/EntityDisplayTest.php
index 82003d8146e4..efcd9e05817c 100644
--- a/core/modules/field_ui/src/Tests/EntityDisplayTest.php
+++ b/core/modules/field_ui/src/Tests/EntityDisplayTest.php
@@ -17,6 +17,15 @@
  */
 class EntityDisplayTest extends KernelTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   public static $modules = array('field_ui', 'field', 'entity_test', 'user', 'text', 'field_test', 'node', 'system', 'entity_reference');
 
   protected function setUp() {
@@ -48,7 +57,7 @@ public function testEntityDisplayCRUD() {
     $this->assertEqual($display->getComponent('component_2'), $expected['component_2']);
 
     // Check that arbitrary options are correctly stored.
-    $expected['component_3'] = array('weight' => 10, 'foo' => 'bar');
+    $expected['component_3'] = array('weight' => 10, 'third_party_settings' => array('field_test' => array('foo' => 'bar')));
     $display->setComponent('component_3', $expected['component_3']);
     $this->assertEqual($display->getComponent('component_3'), $expected['component_3']);
 
diff --git a/core/modules/field_ui/src/Tests/EntityFormDisplayTest.php b/core/modules/field_ui/src/Tests/EntityFormDisplayTest.php
index 057d575c7613..5ce4e9af1d24 100644
--- a/core/modules/field_ui/src/Tests/EntityFormDisplayTest.php
+++ b/core/modules/field_ui/src/Tests/EntityFormDisplayTest.php
@@ -17,6 +17,15 @@
  */
 class EntityFormDisplayTest extends KernelTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   public static $modules = array('field_ui', 'field', 'entity_test', 'field_test', 'user', 'text', 'entity_reference');
 
   protected function setUp() {
diff --git a/core/modules/field_ui/src/Tests/ManageDisplayTest.php b/core/modules/field_ui/src/Tests/ManageDisplayTest.php
index d0edeef9e313..5c8e276abf52 100644
--- a/core/modules/field_ui/src/Tests/ManageDisplayTest.php
+++ b/core/modules/field_ui/src/Tests/ManageDisplayTest.php
@@ -8,7 +8,6 @@
 namespace Drupal\field_ui\Tests;
 
 use Drupal\Component\Utility\Unicode;
-use Drupal\config\Tests\SchemaCheckTestTrait;
 use Drupal\Core\Entity\EntityInterface;
 use Drupal\Core\Language\LanguageInterface;
 use Drupal\simpletest\WebTestBase;
@@ -20,7 +19,15 @@
  */
 class ManageDisplayTest extends WebTestBase {
 
-  use SchemaCheckTestTrait;
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   use FieldUiTestTrait;
 
   /**
@@ -141,7 +148,6 @@ function testFormatterUI() {
     $display = entity_load('entity_view_display', 'node.' . $this->type . '.default', TRUE);
     $this->assertEqual($display->getRenderer('field_test')->getThirdPartySetting('field_third_party_test', 'field_test_field_formatter_third_party_settings_form'), 'foo');
     $this->assertTrue(in_array('field_third_party_test', $display->calculateDependencies()['module']), 'The display has a dependency on field_third_party_test module.');
-    $this->assertConfigSchema(\Drupal::service('config.typed'), $display->getEntityType()->getConfigPrefix() . '.' . $display->id(), $display->toArray());
 
     // Confirm that the third party settings are not updated on the settings form.
     $this->drupalPostAjaxForm(NULL, array(), "field_test_settings_edit");
@@ -248,7 +254,6 @@ public function testWidgetUI() {
     $display = entity_load('entity_form_display', 'node.' . $this->type . '.default', TRUE);
     $this->assertEqual($display->getRenderer('field_test')->getThirdPartySetting('field_third_party_test', 'field_test_widget_third_party_settings_form'), 'foo');
     $this->assertTrue(in_array('field_third_party_test', $display->calculateDependencies()['module']), 'Form display does not have a dependency on field_third_party_test module.');
-    $this->assertConfigSchema(\Drupal::service('config.typed'), $display->getEntityType()->getConfigPrefix() . '.' . $display->id(), $display->toArray());
 
     // Confirm that the third party settings are not updated on the settings form.
     $this->drupalPostAjaxForm(NULL, array(), "field_test_settings_edit");
diff --git a/core/modules/field_ui/src/Tests/ManageFieldsTest.php b/core/modules/field_ui/src/Tests/ManageFieldsTest.php
index 8c2adb66610e..84fbca612f1f 100644
--- a/core/modules/field_ui/src/Tests/ManageFieldsTest.php
+++ b/core/modules/field_ui/src/Tests/ManageFieldsTest.php
@@ -21,6 +21,15 @@
  */
 class ManageFieldsTest extends WebTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   use FieldUiTestTrait;
 
   /**
diff --git a/core/modules/link/config/schema/link.schema.yml b/core/modules/link/config/schema/link.schema.yml
index d489174402cd..01a8a65d9ec7 100644
--- a/core/modules/link/config/schema/link.schema.yml
+++ b/core/modules/link/config/schema/link.schema.yml
@@ -21,18 +21,8 @@ field.formatter.settings.link:
       label: 'Open link in new window'
 
 field.formatter.settings.link_separate:
-  type: mapping
+  type: field.formatter.settings.link
   label: 'Link format settings'
-  mapping:
-    trim_length:
-      type: integer
-      label: 'Trim link text length'
-    rel:
-      type: string
-      label: 'Add rel="nofollow" to links'
-    target:
-      type: string
-      label: 'Open link in new window'
 
 field.widget.settings.link_default:
   type: mapping
diff --git a/core/modules/link/src/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php b/core/modules/link/src/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
index c88b8ff7a944..3642a1fef300 100644
--- a/core/modules/link/src/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
+++ b/core/modules/link/src/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
@@ -33,7 +33,7 @@ class LinkSeparateFormatter extends LinkFormatter {
    */
   public static function defaultSettings() {
     return array(
-      'trim_length' => '80',
+      'trim_length' => 80,
       'rel' => '',
       'target' => '',
     ) + parent::defaultSettings();
diff --git a/core/modules/link/src/Tests/LinkFieldTest.php b/core/modules/link/src/Tests/LinkFieldTest.php
index 97058f045a89..685b14539c4e 100644
--- a/core/modules/link/src/Tests/LinkFieldTest.php
+++ b/core/modules/link/src/Tests/LinkFieldTest.php
@@ -20,6 +20,15 @@
  */
 class LinkFieldTest extends WebTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php b/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php
index 10dc01571b1d..d32d336ab2d7 100644
--- a/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php
+++ b/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php
@@ -62,7 +62,7 @@ public function getSettings($widget_type, $widget_settings) {
         'placeholder' => '',
       ),
       'link' => array(
-        'placeholder_uri' => '',
+        'placeholder_url' => '',
         'placeholder_title' => '',
       ),
       'filefield_widget' => array(
diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateFieldWidgetSettingsTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateFieldWidgetSettingsTest.php
index 09b922c87b2b..e970272a7a27 100644
--- a/core/modules/migrate_drupal/src/Tests/d6/MigrateFieldWidgetSettingsTest.php
+++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateFieldWidgetSettingsTest.php
@@ -17,6 +17,15 @@
  */
 class MigrateFieldWidgetSettingsTest extends MigrateDrupalTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
diff --git a/core/modules/options/src/Tests/OptionsFloatFieldImportTest.php b/core/modules/options/src/Tests/OptionsFloatFieldImportTest.php
index 0f8414f5eae1..a555339de046 100644
--- a/core/modules/options/src/Tests/OptionsFloatFieldImportTest.php
+++ b/core/modules/options/src/Tests/OptionsFloatFieldImportTest.php
@@ -18,6 +18,15 @@
  */
 class OptionsFloatFieldImportTest extends FieldTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
diff --git a/core/modules/options/tests/options_config_install_test/config/install/core.entity_view_display.node.options_install_test.default.yml b/core/modules/options/tests/options_config_install_test/config/install/core.entity_view_display.node.options_install_test.default.yml
index d2a3b182342e..7128ee455762 100644
--- a/core/modules/options/tests/options_config_install_test/config/install/core.entity_view_display.node.options_install_test.default.yml
+++ b/core/modules/options/tests/options_config_install_test/config/install/core.entity_view_display.node.options_install_test.default.yml
@@ -23,6 +23,4 @@ content:
     third_party_settings: {  }
 hidden:
   langcode: true
-third_party_settings:
-  entity_test:
-    foo: bar
+third_party_settings: {  }
diff --git a/core/modules/options/tests/options_config_install_test/config/install/core.entity_view_display.node.options_install_test.teaser.yml b/core/modules/options/tests/options_config_install_test/config/install/core.entity_view_display.node.options_install_test.teaser.yml
index a6a9b6024c7b..fe1e4608267d 100644
--- a/core/modules/options/tests/options_config_install_test/config/install/core.entity_view_display.node.options_install_test.teaser.yml
+++ b/core/modules/options/tests/options_config_install_test/config/install/core.entity_view_display.node.options_install_test.teaser.yml
@@ -25,6 +25,4 @@ content:
     third_party_settings: {  }
 hidden:
   langcode: true
-third_party_settings:
-  entity_test:
-    foo: bar
+third_party_settings: {  }
diff --git a/core/modules/quickedit/src/Tests/QuickEditTestBase.php b/core/modules/quickedit/src/Tests/QuickEditTestBase.php
index e08ec2ee3927..1536194c3c4c 100644
--- a/core/modules/quickedit/src/Tests/QuickEditTestBase.php
+++ b/core/modules/quickedit/src/Tests/QuickEditTestBase.php
@@ -14,6 +14,15 @@
  */
 abstract class QuickEditTestBase extends KernelTestBase {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
@@ -92,7 +101,6 @@ protected function createFieldWithStorage($field_name, $type, $cardinality, $lab
     entity_get_form_display('entity_test', 'entity_test', 'default')
       ->setComponent($field_name, array(
         'type' => $widget_type,
-        'label' => $label,
         'settings' => $widget_settings,
       ))
       ->save();
diff --git a/core/modules/system/src/Tests/Entity/EntityQueryRelationshipTest.php b/core/modules/system/src/Tests/Entity/EntityQueryRelationshipTest.php
index 04def245b595..4c8269ab5861 100644
--- a/core/modules/system/src/Tests/Entity/EntityQueryRelationshipTest.php
+++ b/core/modules/system/src/Tests/Entity/EntityQueryRelationshipTest.php
@@ -15,6 +15,15 @@
  */
 class EntityQueryRelationshipTest extends EntityUnitTestBase  {
 
+  /**
+   * Set to TRUE to strict check all configuration saved.
+   *
+   * @see \Drupal\Core\Config\Testing\ConfigSchemaChecker
+   *
+   * @var bool
+   */
+  protected $strictConfigSchema = TRUE;
+
   /**
    * Modules to enable.
    *
@@ -81,7 +90,9 @@ protected function setUp() {
       'type' => 'taxonomy_term_reference',
       'settings' => array(
         'allowed_values' => array(
-          'vocabulary' => $vocabulary->id(),
+          array(
+            'vocabulary' => $vocabulary->id(),
+          ),
         ),
       ),
     ))->save();
diff --git a/core/modules/system/tests/modules/entity_test/config/schema/entity_test.schema.yml b/core/modules/system/tests/modules/entity_test/config/schema/entity_test.schema.yml
index 85a19e841470..5a3ad024e9a1 100644
--- a/core/modules/system/tests/modules/entity_test/config/schema/entity_test.schema.yml
+++ b/core/modules/system/tests/modules/entity_test/config/schema/entity_test.schema.yml
@@ -5,3 +5,11 @@ entity_view_display.third_party.entity_test:
     foo:
       type: string
       label: 'Label for foo'
+
+field.storage_settings.shape:
+  type: mapping
+  label: 'Shape field storage settings'
+  mapping:
+    foreign_key_name:
+      type: string
+      label: 'Foreign key name'
-- 
GitLab