Version 1
[yaffs-website] / web / core / modules / views / tests / src / Kernel / TestViewsTest.php
diff --git a/web/core/modules/views/tests/src/Kernel/TestViewsTest.php b/web/core/modules/views/tests/src/Kernel/TestViewsTest.php
new file mode 100644 (file)
index 0000000..f9aa673
--- /dev/null
@@ -0,0 +1,56 @@
+<?php
+
+namespace Drupal\Tests\views\Kernel;
+
+use Drupal\Tests\SchemaCheckTestTrait;
+use Drupal\config_test\TestInstallStorage;
+use Drupal\Core\Config\InstallStorage;
+use Drupal\Core\Config\TypedConfigManager;
+use Drupal\KernelTests\KernelTestBase;
+
+/**
+ * Tests that test views provided by all modules match schema.
+ *
+ * @group config
+ */
+class TestViewsTest extends KernelTestBase {
+
+  use SchemaCheckTestTrait;
+
+  /**
+   * Modules to enable.
+   *
+   * @var array
+   */
+  public static $modules = ['views_test_data'];
+
+  /**
+   * Tests default configuration data type.
+   */
+  public function testDefaultConfig() {
+    // Create a typed config manager with access to configuration schema in
+    // every module, profile and theme.
+    $typed_config = new TypedConfigManager(
+      \Drupal::service('config.storage'),
+      new TestInstallStorage(InstallStorage::CONFIG_SCHEMA_DIRECTORY),
+      \Drupal::service('cache.discovery'),
+      \Drupal::service('module_handler')
+    );
+
+    // Create a configuration storage with access to default configuration in
+    // every module, profile and theme.
+    $default_config_storage = new TestInstallStorage('test_views');
+
+    foreach ($default_config_storage->listAll() as $config_name) {
+      // Skip files provided by the config_schema_test module since that module
+      // is explicitly for testing schema.
+      if (strpos($config_name, 'config_schema_test') === 0) {
+        continue;
+      }
+
+      $data = $default_config_storage->read($config_name);
+      $this->assertConfigSchema($typed_config, $config_name, $data);
+    }
+  }
+
+}