Index: modules/simpletest/simpletest.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/simpletest.install,v
retrieving revision 1.8
diff -u -p -r1.8 simpletest.install
--- modules/simpletest/simpletest.install	10 Sep 2008 04:13:01 -0000	1.8
+++ modules/simpletest/simpletest.install	10 Sep 2008 11:00:03 -0000
@@ -108,6 +108,11 @@ function simpletest_requirements($phase)
 
   $has_curl = function_exists('curl_init');
 
+  // Test PHP memory_limit
+  $memory_limit = parse_size(ini_get('memory_limit'));
+  $memory_minimum = parse_size('32MB');
+  $memory_met = $memory_limit >= $memory_minimum;
+
   switch ($phase) {
     case 'runtime':
       $requirements['simpletest'] = array(
@@ -115,6 +120,11 @@ function simpletest_requirements($phase)
         'value' => $has_curl ? $t('Enabled') : $t('Not found'),
         'severity' => $has_curl ? REQUIREMENT_OK : REQUIREMENT_ERROR,
       );
+      $requirements['simpletest_php_memory_limit'] = array(
+        'title' => $t('SimpleTest: PHP memory requirement of at least @minimum', array('@minimum' => format_size($memory_minimum))),
+        'value' => $memory_met ? $t('Met') : $t('Not met'),
+        'severity' => $memory_met ? REQUIREMENT_OK : REQUIREMENT_ERROR,
+      );
       break;
     case 'install':
       if ($has_curl) {
@@ -130,6 +140,16 @@ function simpletest_requirements($phase)
           'description' => $t('Simpletest could not be installed because the PHP <a href="!curl_url">cURL</a> library is not available.', array('!curl_url' => 'http://php.net/manual/en/curl.setup.php')),
         );
       }
+
+      if (!$memory_met) {
+        $requirements['simpletest_php_memory_limit'] = array(
+          'title' => $t('SimpleTest: PHP memory requirement'),
+          'severity' => REQUIREMENT_ERROR,
+          'description' => $t('SimpleTest requires the PHP memory limit be set to @minimum or greater. For more information
+                              on how to change the PHP memory limit see the <a href="@increase">documentation</a>.',
+                              array('@minimum' => format_size($memory_minimum), '@increase' => 'http://drupal.org/node/207036')),
+        );
+      }
       break;
   }
 
