Test for contribution recur edit clobbering currency
authorElliott Eggleston <ejegg@ejegg.com>
Mon, 8 Aug 2016 18:45:24 +0000 (14:45 -0400)
committerElliott Eggleston <ejegg@ejegg.com>
Mon, 8 Aug 2016 20:26:58 +0000 (16:26 -0400)
tests/phpunit/CRM/Contribute/BAO/ContributionRecurTest.php

index a2259b9500d49f33706d55bb1753d0e8446877b8..300012dffffe3f33f5d10d6221edd4e777050420 100644 (file)
@@ -112,4 +112,22 @@ class CRM_Contribute_BAO_ContributionRecurTest extends CiviUnitTestCase {
     $this->assertTrue(CRM_Contribute_BAO_ContributionRecur::supportsFinancialTypeChange($contributionRecur['id']));
   }
 
+  /**
+   * Test we don't change unintended fields on API edit
+   */
+  public function testUpdateRecur() {
+    $createParams = $this->_params;
+    $createParams['currency'] = 'XAU';
+    $contributionRecur = $this->callAPISuccess('contribution_recur', 'create', $createParams);
+    $editParams = array(
+      'id' => $contributionRecur['id'],
+      'end_date' => '+ 4 weeks',
+    );
+    $contributionRecur = $this->callAPISuccess('contribution_recur', 'create', $editParams);
+    $dao = new CRM_Contribute_BAO_ContributionRecur();
+    $dao->id = $contributionRecur['id'];
+    $dao->find(TRUE);
+    $this->assertEquals('XAU', $dao->currency, 'Edit clobbered recur currency');
+  }
+
 }