Move _REQUEST cleanup to tearDown
authorEileen McNaughton <emcnaughton@wikimedia.org>
Thu, 31 Aug 2023 05:50:03 +0000 (17:50 +1200)
committerEileen McNaughton <emcnaughton@wikimedia.org>
Mon, 4 Sep 2023 05:20:51 +0000 (17:20 +1200)
tests/phpunit/CRM/Core/FormTest.php

index baa41b46a804d6ef07e8fa8f438828874ac8abcf..c844dbce7d462ebee3080264c9262fd166c31739 100644 (file)
@@ -5,6 +5,18 @@
  */
 class CRM_Core_FormTest extends CiviUnitTestCase {
 
+  private $originalRequest;
+
+  public function setUp(): void {
+    $this->originalRequest = $_REQUEST;
+    parent::setUp();
+  }
+
+  public function tearDown(): void {
+    $_REQUEST = $this->originalRequest;
+    parent::tearDown();
+  }
+
   /**
    * Simulate opening various forms. All we're looking to do here is
    * see if any warnings or notices come up, the equivalent of red boxes
@@ -14,6 +26,7 @@ class CRM_Core_FormTest extends CiviUnitTestCase {
    * @param string $url
    *
    * @dataProvider formList
+   * @throws \CRM_Core_Exception
    */
   public function testOpeningForms(string $url): void {
     $this->createLoggedInUser();
@@ -32,10 +45,6 @@ class CRM_Core_FormTest extends CiviUnitTestCase {
     ob_start();
     CRM_Core_Invoke::runItem($item);
     ob_end_clean();
-
-    foreach ($parsed as $param => $dontcare) {
-      unset($_REQUEST[$param]);
-    }
   }
 
   /**
@@ -102,10 +111,6 @@ class CRM_Core_FormTest extends CiviUnitTestCase {
     CRM_Core_Invoke::runItem($item);
     ob_end_clean();
 
-    unset($_REQUEST['reset']);
-    unset($_REQUEST['action']);
-    unset($_REQUEST['sid']);
-
     $this->callAPISuccess('PriceSet', 'delete', ['id' => $priceSetId]);
   }