@@ -473,6 +473,54 @@ def test_create_return_for_order_exception(self):
473
473
474
474
log_mock .assert_called_once_with (expected_message )
475
475
476
+ def test_successful_order_return_payment_state_update (self ):
477
+ base_url = self .client_set .get_base_url_from_client ()
478
+
479
+ # Mocked order to be passed in to update method
480
+ mock_order = gen_order ("mock_order_id" )
481
+ mock_order .version = "2"
482
+ mock_return_item = gen_return_item ("mock_return_item_id" , ReturnPaymentState .INITIAL )
483
+ mock_return_info = ReturnInfo (items = [mock_return_item ])
484
+ mock_order .return_info .append (mock_return_info )
485
+
486
+ # Mocked expected order recieved after CT SDK call to update the order
487
+ mock_response_order = gen_order ("mock_order_id" )
488
+ mock_payment = gen_payment ()
489
+ mock_response_order .version = "3"
490
+ mock_response_return_item = gen_return_item ("mock_return_item_id" , ReturnPaymentState .REFUNDED )
491
+ mock_response_return_info = ReturnInfo (items = [mock_response_return_item ])
492
+ mock_response_order .return_info .append (mock_response_return_info )
493
+
494
+ with requests_mock .Mocker (real_http = True , case_sensitive = False ) as mocker :
495
+ mocker .post (
496
+ f"{ base_url } orders/mock_order_id" ,
497
+ json = mock_response_order .serialize (),
498
+ status_code = 200
499
+ )
500
+ mocker .post (
501
+ f"{ base_url } payments/{ mock_payment .id } " ,
502
+ json = mock_payment .serialize (),
503
+ status_code = 200
504
+ )
505
+ mocker .get (
506
+ f"{ base_url } payments/key={ mock_payment .id } " ,
507
+ json = mock_payment .serialize (),
508
+ status_code = 200
509
+ )
510
+ mocker .get (
511
+ f"{ base_url } orders/mock_order_id" ,
512
+ json = mock_response_order .serialize (),
513
+ status_code = 200
514
+ )
515
+ result = self .client_set .client .update_return_payment_state_after_successful_refund (
516
+ mock_order .id ,
517
+ mock_order .version ,
518
+ mock_response_return_item .line_item_id ,
519
+ mock_payment .id ,
520
+ 10000
521
+ )
522
+ self .assertEqual (result .return_info [1 ].items [0 ].payment_state , ReturnPaymentState .REFUNDED )
523
+
476
524
def test_create_refund_transaction (self ):
477
525
base_url = self .client_set .get_base_url_from_client ()
478
526
@@ -784,8 +832,6 @@ def setUp(self):
784
832
'get_payment_by_key' : self .mock .get_payment_by_key ,
785
833
'create_return_for_order' : self .mock .create_return_for_order ,
786
834
'create_return_payment_transaction' : self .mock .create_return_payment_transaction
787
- # 'update_return_payment_state_after_successful_refund':
788
- # self.mock.update_return_payment_state_after_successful_refund
789
835
}
790
836
)
791
837
@@ -794,46 +840,6 @@ def tearDown(self):
794
840
MonkeyPatch .unmonkey (CommercetoolsAPIClient )
795
841
super ().tearDown ()
796
842
797
- def test_successful_order_return_payment_state_update (self ):
798
- base_url = self .client_set .get_base_url_from_client ()
799
-
800
- # Mocked order to be passed in to update method
801
- mock_order = gen_order ("mock_order_id" )
802
- mock_order .version = "2"
803
- mock_return_item = gen_return_item ("mock_return_item_id" , ReturnPaymentState .INITIAL )
804
- mock_return_info = ReturnInfo (items = [mock_return_item ])
805
- mock_order .return_info .append (mock_return_info )
806
-
807
- # Mocked expected order recieved after CT SDK call to update the order
808
- mock_response_order = gen_order ("mock_order_id" )
809
- mock_response_order .version = "3"
810
- mock_response_return_item = gen_return_item ("mock_return_item_id" , ReturnPaymentState .REFUNDED )
811
- mock_response_return_info = ReturnInfo (items = [mock_response_return_item ])
812
- mock_response_order .return_info .append (mock_response_return_info )
813
-
814
- mock_response_payment = gen_payment ()
815
-
816
- with requests_mock .Mocker (real_http = True , case_sensitive = False ) as mocker :
817
- mocker .post (
818
- f"{ base_url } orders/{ mock_response_order .id } " ,
819
- json = mock_response_order .serialize (),
820
- status_code = 200
821
- )
822
- mocker .get (
823
- f"{ base_url } payments/{ mock_response_payment .id } " ,
824
- json = mock_response_payment .serialize (),
825
- status_code = 200
826
- )
827
- result = self .client_set .client .update_return_payment_state_after_successful_refund (
828
- mock_order .id ,
829
- mock_order .version ,
830
- mock_response_return_item .line_item_id ,
831
- "pm_1" ,
832
- 10000
833
- )
834
-
835
- self .assertEqual (result .return_info [1 ].items [0 ].payment_state , ReturnPaymentState .REFUNDED )
836
-
837
843
def test_update_return_payment_state_exception (self ):
838
844
mock_error_response : CommercetoolsError = CommercetoolsError (
839
845
"Could not update ReturnPaymentState" , [
0 commit comments