diff core/modules/system/tests/src/Kernel/PermissionsTest.php @ 14:1fec387a4317

Update Drupal core to 8.5.2 via Composer
author Chris Cannam
date Mon, 23 Apr 2018 09:46:53 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/core/modules/system/tests/src/Kernel/PermissionsTest.php	Mon Apr 23 09:46:53 2018 +0100
@@ -0,0 +1,44 @@
+<?php
+
+namespace Drupal\Tests\system\Kernel;
+
+use Drupal\KernelTests\KernelTestBase;
+
+/**
+ * @group system
+ */
+class PermissionsTest extends KernelTestBase {
+
+  /**
+   * {@inheritdoc}
+   */
+  public static $modules = [
+    'system',
+    'user',
+  ];
+
+  /**
+   * Tests the 'access content' permission is provided by the System module.
+   */
+  public function testAccessContentPermission() {
+    // Uninstalling modules requires the users_data table to exist.
+    $this->installSchema('user', ['users_data']);
+
+    $permissions = $this->container->get('user.permissions')->getPermissions();
+    $this->assertSame('system', $permissions['access content']['provider']);
+
+    // Install the 'node' module, assert that it is now the 'node' module
+    // providing the 'access content' permission.
+    $this->container->get('module_installer')->install(['node']);
+
+    $permissions = $this->container->get('user.permissions')->getPermissions();
+    $this->assertSame('system', $permissions['access content']['provider']);
+
+    // Uninstall the 'node' module, assert that it is again the 'system' module.
+    $this->container->get('module_installer')->uninstall(['node']);
+
+    $permissions = $this->container->get('user.permissions')->getPermissions();
+    $this->assertSame('system', $permissions['access content']['provider']);
+  }
+
+}