Loading core/modules/system/src/Element/StatusReportPage.php +2 −0 Changes for core/modules/system/src/Element/StatusReportPage.php: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -59,8 +59,10 @@ public static function preRenderGeneralInfo($element) { case 'php_memory_limit': $element['#general_info']['#' . $key] = $requirement; if (isset($requirement['severity']) && $requirement['severity'] < REQUIREMENT_WARNING) { if (empty($requirement['severity']) || $requirement['severity'] == REQUIREMENT_OK) { unset($element['#requirements'][$key]); } } break; } } Loading core/modules/system/tests/src/Functional/System/StatusTest.php +42 −1 Changes for core/modules/system/tests/src/Functional/System/StatusTest.php: 42 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ use Drupal\Core\Url; use Drupal\Tests\BrowserTestBase; use Drupal\Core\StringTranslation\PluralTranslatableMarkup; /** * Tests output on the status overview page. Loading Loading @@ -92,7 +93,7 @@ public function testStatusPage() { $this->drupalGet('admin/reports/status/php'); $this->assertSession()->statusCodeEquals(200); // Check if cron error is displayed in errors section // Check if cron error is displayed in errors section. $cron_last_run = \Drupal::state()->get('system.cron_last'); \Drupal::state()->set('system.cron_last', 0); $this->drupalGet('admin/reports/status'); Loading Loading @@ -175,4 +176,44 @@ public function testStatusPage() { } } /** * Tests that the Error counter matches the displayed number of errors. */ public function testErrorElementCount() { // Trigger "cron has not run recently" error: $cron_config = \Drupal::config('system.cron'); $time = \Drupal::time()->getRequestTime(); \Drupal::state()->set('install_time', $time); $threshold_error = $cron_config->get('threshold.requirements_error'); \Drupal::state()->set('system.cron_last', $time - $threshold_error - 1); $this->drupalGet('admin/reports/status'); $error_elements = $this->cssSelect('.system-status-report__status-icon--error'); $this->assertNotEquals(count($error_elements), 0, 'Errors are listed on the page.'); $expected_text = new PluralTranslatableMarkup(count($error_elements), 'Error', 'Errors'); $expected_text = count($error_elements) . ' ' . $expected_text; $this->assertSession()->responseContains((string) $expected_text); } /** * Tests that the Warning counter matches the displayed number of warnings. */ public function testWarningElementCount() { // Trigger "cron has not run recently" with warning threshold: $cron_config = \Drupal::config('system.cron'); $time = \Drupal::time()->getRequestTime(); \Drupal::state()->set('install_time', $time); $threshold_warning = $cron_config->get('threshold.requirements_warning'); \Drupal::state()->set('system.cron_last', $time - $threshold_warning - 1); $this->drupalGet('admin/reports/status'); $warning_elements = $this->cssSelect('.system-status-report__status-icon--warning'); $this->assertNotEquals(count($warning_elements), 0, 'Warnings are listed on the page.'); $expected_text = new PluralTranslatableMarkup(count($warning_elements), 'Warning', 'Warnings'); $expected_text = count($warning_elements) . ' ' . $expected_text; $this->assertSession()->responseContains((string) $expected_text); } } Loading
core/modules/system/src/Element/StatusReportPage.php +2 −0 Changes for core/modules/system/src/Element/StatusReportPage.php: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -59,8 +59,10 @@ public static function preRenderGeneralInfo($element) { case 'php_memory_limit': $element['#general_info']['#' . $key] = $requirement; if (isset($requirement['severity']) && $requirement['severity'] < REQUIREMENT_WARNING) { if (empty($requirement['severity']) || $requirement['severity'] == REQUIREMENT_OK) { unset($element['#requirements'][$key]); } } break; } } Loading
core/modules/system/tests/src/Functional/System/StatusTest.php +42 −1 Changes for core/modules/system/tests/src/Functional/System/StatusTest.php: 42 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ use Drupal\Core\Url; use Drupal\Tests\BrowserTestBase; use Drupal\Core\StringTranslation\PluralTranslatableMarkup; /** * Tests output on the status overview page. Loading Loading @@ -92,7 +93,7 @@ public function testStatusPage() { $this->drupalGet('admin/reports/status/php'); $this->assertSession()->statusCodeEquals(200); // Check if cron error is displayed in errors section // Check if cron error is displayed in errors section. $cron_last_run = \Drupal::state()->get('system.cron_last'); \Drupal::state()->set('system.cron_last', 0); $this->drupalGet('admin/reports/status'); Loading Loading @@ -175,4 +176,44 @@ public function testStatusPage() { } } /** * Tests that the Error counter matches the displayed number of errors. */ public function testErrorElementCount() { // Trigger "cron has not run recently" error: $cron_config = \Drupal::config('system.cron'); $time = \Drupal::time()->getRequestTime(); \Drupal::state()->set('install_time', $time); $threshold_error = $cron_config->get('threshold.requirements_error'); \Drupal::state()->set('system.cron_last', $time - $threshold_error - 1); $this->drupalGet('admin/reports/status'); $error_elements = $this->cssSelect('.system-status-report__status-icon--error'); $this->assertNotEquals(count($error_elements), 0, 'Errors are listed on the page.'); $expected_text = new PluralTranslatableMarkup(count($error_elements), 'Error', 'Errors'); $expected_text = count($error_elements) . ' ' . $expected_text; $this->assertSession()->responseContains((string) $expected_text); } /** * Tests that the Warning counter matches the displayed number of warnings. */ public function testWarningElementCount() { // Trigger "cron has not run recently" with warning threshold: $cron_config = \Drupal::config('system.cron'); $time = \Drupal::time()->getRequestTime(); \Drupal::state()->set('install_time', $time); $threshold_warning = $cron_config->get('threshold.requirements_warning'); \Drupal::state()->set('system.cron_last', $time - $threshold_warning - 1); $this->drupalGet('admin/reports/status'); $warning_elements = $this->cssSelect('.system-status-report__status-icon--warning'); $this->assertNotEquals(count($warning_elements), 0, 'Warnings are listed on the page.'); $expected_text = new PluralTranslatableMarkup(count($warning_elements), 'Warning', 'Warnings'); $expected_text = count($warning_elements) . ' ' . $expected_text; $this->assertSession()->responseContains((string) $expected_text); } }