Add specific test of the getTaxRates function
authorSeamus Lee <seamuslee001@gmail.com>
Sat, 13 Aug 2016 21:19:13 +0000 (07:19 +1000)
committerSeamus Lee <seamuslee001@gmail.com>
Sat, 13 Aug 2016 21:19:13 +0000 (07:19 +1000)
tests/phpunit/CRM/Core/PseudoConstantTest.php

index cc5313b53a2dec399b224500098552b2d64b1a73..4467d0ef531c1ceb9b6760fcebd6fa0fc7ba7bc1 100644 (file)
@@ -1090,4 +1090,34 @@ class CRM_Core_PseudoConstantTest extends CiviUnitTestCase {
     $this->assertEquals(array_flip($byId), $result);
   }
 
+  public function testGetTaxRates() {
+    $contact = $this->createLoggedInUser();
+    $financialType = $this->callAPISuccess('financial_type', 'create', array(
+      'name' => 'Test taxable financial Type',
+      'is_reserved' => 0,
+      'is_active' => 1,
+    ));
+    $financialAccount = $this->callAPISuccess('financial_account', 'create', array(
+       'name' => 'Test Tax financial account ',
+       'contact_id' => $contact,
+       'financial_account_type_id' => 2,
+       'is_tax' => 1,
+       'tax_rate' => 5.00,
+       'is_reserved' => 0,
+       'is_active' => 1,
+       'is_default' => 0,
+    ));
+    $financialTypeId = $financialType['id'];
+    $financialAccountId = $financialAccount['id'];
+    $financialAccountParams = array(
+      'entity_table' => 'civicrm_financial_type',
+      'entity_id' => $financialTypeId,
+      'account_relationship' => 10,
+      'financial_account_id' => $financialAccountId,
+    );
+    CRM_Financial_BAO_FinancialTypeAccount::add($financialAccountParams);
+    $taxRates = CRM_Core_PseudoConstant::getTaxRates();
+    $this->assertEquals('5.00', $taxRates[$financialType['id']]);
+  }
+
 }