From 4ee48de6352556a5924a0bad044a32771696dfaf Mon Sep 17 00:00:00 2001 From: Kirill Braslavsky Date: Wed, 14 Apr 2021 16:34:14 +0300 Subject: [PATCH 1/3] call payment_complete() instead of update status --- modules/ppcp-wc-gateway/src/Gateway/class-paypalgateway.php | 5 ++--- .../ppcp-wc-gateway/src/Processor/class-orderprocessor.php | 6 ++---- .../src/Handler/class-paymentcapturecompleted.php | 2 +- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/modules/ppcp-wc-gateway/src/Gateway/class-paypalgateway.php b/modules/ppcp-wc-gateway/src/Gateway/class-paypalgateway.php index 12bf7278d..fe59a2691 100644 --- a/modules/ppcp-wc-gateway/src/Gateway/class-paypalgateway.php +++ b/modules/ppcp-wc-gateway/src/Gateway/class-paypalgateway.php @@ -215,10 +215,9 @@ class PayPalGateway extends \WC_Payment_Gateway { $wc_order->add_order_note( __( 'Payment successfully captured.', 'woocommerce-paypal-payments' ) ); - - $wc_order->set_status( 'processing' ); $wc_order->update_meta_data( self::CAPTURED_META_KEY, 'true' ); $wc_order->save(); + $wc_order->payment_complete(); return true; } @@ -227,11 +226,11 @@ class PayPalGateway extends \WC_Payment_Gateway { $wc_order->add_order_note( __( 'Payment successfully captured.', 'woocommerce-paypal-payments' ) ); - $wc_order->set_status( 'processing' ); } $wc_order->update_meta_data( self::CAPTURED_META_KEY, 'true' ); $wc_order->save(); + $wc_order->payment_complete(); return true; } return false; diff --git a/modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php b/modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php index bdbbe533f..0e53f1970 100644 --- a/modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php +++ b/modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php @@ -176,10 +176,8 @@ class OrderProcessor { __( 'Awaiting payment.', 'woocommerce-paypal-payments' ) ); if ( $order->status()->is( OrderStatus::COMPLETED ) && $order->intent() === 'CAPTURE' ) { - $wc_order->update_status( - 'processing', - __( 'Payment received.', 'woocommerce-paypal-payments' ) - ); + + $wc_order->payment_complete(); } if ( $this->capture_authorized_downloads( $order ) && $this->authorized_payments_processor->process( $wc_order ) ) { diff --git a/modules/ppcp-webhooks/src/Handler/class-paymentcapturecompleted.php b/modules/ppcp-webhooks/src/Handler/class-paymentcapturecompleted.php index 7c21588ba..88b0d4ce2 100644 --- a/modules/ppcp-webhooks/src/Handler/class-paymentcapturecompleted.php +++ b/modules/ppcp-webhooks/src/Handler/class-paymentcapturecompleted.php @@ -117,7 +117,7 @@ class PaymentCaptureCompleted implements RequestHandler { __( 'Payment successfully captured.', 'woocommerce-paypal-payments' ) ); - $wc_order->set_status( 'processing' ); + $wc_order->payment_complete(); $wc_order->update_meta_data( PayPalGateway::CAPTURED_META_KEY, 'true' ); $wc_order->save(); $this->logger->log( From 80892ca739b30276ff40be0495933e2c4ec78963 Mon Sep 17 00:00:00 2001 From: Kirill Braslavsky Date: Fri, 16 Apr 2021 19:46:19 +0300 Subject: [PATCH 2/3] fix phpcs errors --- modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php b/modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php index 0e53f1970..ccb2c4e23 100644 --- a/modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php +++ b/modules/ppcp-wc-gateway/src/Processor/class-orderprocessor.php @@ -176,7 +176,7 @@ class OrderProcessor { __( 'Awaiting payment.', 'woocommerce-paypal-payments' ) ); if ( $order->status()->is( OrderStatus::COMPLETED ) && $order->intent() === 'CAPTURE' ) { - + $wc_order->payment_complete(); } From 59311dcf121e795903489a79aaa56febc8e6a29d Mon Sep 17 00:00:00 2001 From: Kirill Braslavsky Date: Mon, 19 Apr 2021 11:47:28 +0300 Subject: [PATCH 3/3] update tests --- tests/PHPUnit/WcGateway/Gateway/WcGatewayTest.php | 10 ++++------ .../PHPUnit/WcGateway/Processor/OrderProcessorTest.php | 3 +-- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/tests/PHPUnit/WcGateway/Gateway/WcGatewayTest.php b/tests/PHPUnit/WcGateway/Gateway/WcGatewayTest.php index d0418d41e..0b3f44979 100644 --- a/tests/PHPUnit/WcGateway/Gateway/WcGatewayTest.php +++ b/tests/PHPUnit/WcGateway/Gateway/WcGatewayTest.php @@ -191,12 +191,11 @@ class WcGatewayTest extends TestCase $wcOrder = Mockery::mock(\WC_Order::class); $wcOrder ->expects('add_order_note'); - $wcOrder - ->expects('set_status') - ->with('processing'); $wcOrder ->expects('update_meta_data') ->with(PayPalGateway::CAPTURED_META_KEY, 'true'); + $wcOrder + ->expects('payment_complete'); $wcOrder ->expects('save'); $settingsRenderer = Mockery::mock(SettingsRenderer::class); @@ -247,12 +246,11 @@ class WcGatewayTest extends TestCase ->andReturn('on-hold'); $wcOrder ->expects('add_order_note'); - $wcOrder - ->expects('set_status') - ->with('processing'); $wcOrder ->expects('update_meta_data') ->with(PayPalGateway::CAPTURED_META_KEY, 'true'); + $wcOrder + ->expects('payment_complete'); $wcOrder ->expects('save'); $settingsRenderer = Mockery::mock(SettingsRenderer::class); diff --git a/tests/PHPUnit/WcGateway/Processor/OrderProcessorTest.php b/tests/PHPUnit/WcGateway/Processor/OrderProcessorTest.php index 03121934a..11e9db2d7 100644 --- a/tests/PHPUnit/WcGateway/Processor/OrderProcessorTest.php +++ b/tests/PHPUnit/WcGateway/Processor/OrderProcessorTest.php @@ -272,8 +272,7 @@ class OrderProcessorTest extends TestCase $wcOrder->expects('set_transaction_id') ->with($transactionId); $wcOrder - ->expects('update_status') - ->with('processing', 'Payment received.'); + ->expects('payment_complete'); $this->assertTrue($testee->process($wcOrder)); }