From 235a1fcd4005917b1b172dfc3b9ced73a91e414e Mon Sep 17 00:00:00 2001 From: Ahed Date: Mon, 31 Jul 2023 17:42:50 +0300 Subject: [PATCH 1/2] CIWEMB-345: Handle payment plan in test mode --- .../UpfrontInstalments/AbstractUpfrontInstalmentsCreator.php | 1 + .../Test/Entity/PaymentPlanMembershipOrder.php | 2 ++ CRM/MembershipExtras/Test/Fabricator/PaymentPlanOrder.php | 4 +++- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CRM/MembershipExtras/Service/UpfrontInstalments/AbstractUpfrontInstalmentsCreator.php b/CRM/MembershipExtras/Service/UpfrontInstalments/AbstractUpfrontInstalmentsCreator.php index be5c35bb..1d474319 100644 --- a/CRM/MembershipExtras/Service/UpfrontInstalments/AbstractUpfrontInstalmentsCreator.php +++ b/CRM/MembershipExtras/Service/UpfrontInstalments/AbstractUpfrontInstalmentsCreator.php @@ -72,6 +72,7 @@ private function setLastContribution() { 'fee_amount', 'total_amount', 'payment_instrument_id', 'is_test', 'tax_amount', 'contribution_recur_id', 'financial_type_id', 'receive_date', ], + 'is_test' => $this->currentRecurContribution['is_test'] ?? 0, 'contribution_recur_id' => $this->currentRecurContribution['id'], 'options' => ['limit' => 1, 'sort' => 'id DESC'], ])['values'][0]; diff --git a/CRM/MembershipExtras/Test/Entity/PaymentPlanMembershipOrder.php b/CRM/MembershipExtras/Test/Entity/PaymentPlanMembershipOrder.php index 0b77f12f..f56bae6d 100644 --- a/CRM/MembershipExtras/Test/Entity/PaymentPlanMembershipOrder.php +++ b/CRM/MembershipExtras/Test/Entity/PaymentPlanMembershipOrder.php @@ -45,4 +45,6 @@ class CRM_MembershipExtras_Test_Entity_PaymentPlanMembershipOrder { public $paymentSchemeId; + public $isTest; + } diff --git a/CRM/MembershipExtras/Test/Fabricator/PaymentPlanOrder.php b/CRM/MembershipExtras/Test/Fabricator/PaymentPlanOrder.php index 081d791d..771ed46c 100644 --- a/CRM/MembershipExtras/Test/Fabricator/PaymentPlanOrder.php +++ b/CRM/MembershipExtras/Test/Fabricator/PaymentPlanOrder.php @@ -43,6 +43,7 @@ public static function fabricate(PaymentPlanMembershipOrderEntity $paymentPlanMe * @throws CiviCRM_API3_Exception */ private static function updatePaymentPlanMissingParams() { + self::$paymentPlanMembershipOrder->isTest = self::$paymentPlanMembershipOrder->isTest ?? 0; if (empty(self::$paymentPlanMembershipOrder->contactId)) { self::$paymentPlanMembershipOrder->contactId = CRM_MembershipExtras_Test_Fabricator_Contact::fabricate()['id']; } @@ -133,7 +134,7 @@ private static function createRecurringContribution() { 'frequency_interval' => $frequencyInterval, 'installments' => $instalments, 'contribution_status_id' => self::$paymentPlanMembershipOrder->paymentPlanStatus, - 'is_test' => 0, + 'is_test' => self::$paymentPlanMembershipOrder->isTest, 'auto_renew' => isset(self::$paymentPlanMembershipOrder->autoRenew) ? self::$paymentPlanMembershipOrder->autoRenew : 1, 'cycle_day' => CRM_MembershipExtras_Service_CycleDayCalculator::calculate(self::$paymentPlanMembershipOrder->paymentPlanStartDate, $frequencyUnit), 'payment_processor_id' => self::$paymentPlanMembershipOrder->paymentProcessor, @@ -298,6 +299,7 @@ private static function createFirstInstalment($recurringContribution, &$lineItem 'payment_instrument_id' => self::$paymentPlanMembershipOrder->paymentMethod, 'financial_type_id' => self::$paymentPlanMembershipOrder->financialType, 'contribution_status_id' => self::$paymentPlanMembershipOrder->paymentPlanStatus, + 'is_test' => self::$paymentPlanMembershipOrder->isTest, ]; $contribution = ContributionFabricator::fabricate($params); From 9544fddbe890b5a77044871d5aece3c88b8b7aa7 Mon Sep 17 00:00:00 2001 From: Ahed Date: Mon, 31 Jul 2023 18:05:51 +0300 Subject: [PATCH 2/2] CIWEMB-345: Fix the broken test workflow --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 6f4674b8..47923a56 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -6,7 +6,7 @@ jobs: run-unit-tests: runs-on: ubuntu-latest - container: compucorp/civicrm-buildkit:1.3.0-php8.0 + container: compucorp/civicrm-buildkit:1.3.1-php8.0 env: CIVICRM_EXTENSIONS_DIR: site/web/sites/all/modules/civicrm/tools/extensions