def test_charge_wallet_failure(self, mock_create, mock_token): """Test charge wallet fails with correct message""" mock_token.return_value = False mock_create.return_value = 'refresh_token' return_status, message = paypal_client.charge_wallet(self.transaction, '*****@*****.**', 'correlation_id', 'sale') self.assertEqual(return_status, False) self.assertIn("Error while creating payment", message)
def test_charge_wallet_failure(self, mock_create, mock_token): """Test charge wallet fails with correct message""" mock_token.return_value = False mock_create.return_value = 'refresh_token' return_status, message = paypal_client.charge_wallet( self.transaction, '*****@*****.**', 'correlation_id', 'sale') self.assertEqual(return_status, False) self.assertIn("Error while creating payment", message)
def test_charge_wallet_success(self, mock): mock.return_value = True paypal_client.save_refresh_token( '*****@*****.**', 'ref_token_sample') return_status, message = paypal_client.charge_wallet( self.transaction, '*****@*****.**', 'correlation_id', 'sale') self.assertEqual(return_status, True) self.assertIn("Charged customer [email protected] " + self.transaction["amount"]["total"], message)
def test_charge_wallet_success(self, mock): mock.return_value = True paypal_client.save_refresh_token('*****@*****.**', 'ref_token_sample') return_status, message = paypal_client.charge_wallet( self.transaction, '*****@*****.**', 'correlation_id', 'sale') self.assertEqual(return_status, True) self.assertIn( "Charged customer [email protected] " + self.transaction["amount"]["total"], message)
def correlations(): """Send correlation id, customer id (e.g email) and transactions details for purchase made by customer who formerly consented to future payments. Can be used for immediate payments or authorize a payment for later execution https://developer.paypal.com/docs/integration/direct/capture-payment/ """ result, message = charge_wallet( transaction=request.json['transactions'][0], customer_id=request.json['customer_id'], correlation_id=request.json['correlation_id'], intent=request.json['intent']) if result: return jsonify({"status": message}), 200 else: raise InvalidUsage(message)
def correlations(): """Send correlation id, customer id (e.g email) and transactions details for purchase made by customer who formerly consented to future payments. Can be used for immediate payments or authorize a payment for later execution https://developer.paypal.com/docs/integration/direct/capture-payment/ """ result, message = charge_wallet( transaction=request.json["transactions"][0], customer_id=request.json["customer_id"], correlation_id=request.json["correlation_id"], intent=request.json["intent"], ) if result: return jsonify({"status": message}), 200 else: raise InvalidUsage(message)
def test_charge_wallet_missing_consent(self): """Charging a new customer without consent will not work""" return_status, message = paypal_client.charge_wallet( self.transaction, '*****@*****.**', None, 'sale') self.assertEqual(return_status, False) self.assertIn("Customer has not granted consent", message)