Awight has uploaded a new change for review.
https://gerrit.wikimedia.org/r/249562
Change subject: Follow crm/composer.lock
......................................................................
Follow crm/composer.lock
Change-Id: I6218ba3eda51452bb3e320d0dd8b767e996a8fc4
---
M composer/installed.json
M wikimedia/smash-pig/PaymentProviders/Worldpay/Audit/WpgReconciliationFile.php
A wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/Data/audit/capture.txt
A wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/Data/audit/refund.txt
A wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/phpunit/AuditTest.php
M wikimedia/smash-pig/phpunit.xml
6 files changed, 105 insertions(+), 42 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/wikimedia/fundraising/crm/vendor
refs/changes/62/249562/1
diff --git a/composer/installed.json b/composer/installed.json
index b957931..93defd5 100644
--- a/composer/installed.json
+++ b/composer/installed.json
@@ -795,13 +795,53 @@
]
},
{
+ "name": "wikimedia/donation-interface",
+ "version": "dev-master",
+ "version_normalized": "9999999-dev",
+ "source": {
+ "type": "git",
+ "url":
"https://gerrit.wikimedia.org/r/mediawiki/extensions/DonationInterface.git",
+ "reference": "e9c479de7594f9e1d011fa344792cb1cca987aad"
+ },
+ "require": {
+ "amzn/login-and-pay-with-amazon-sdk-php": "dev-master",
+ "coderkungfu/php-queue": "dev-master",
+ "fusesource/stomp-php": "2.1.*",
+ "monolog/monolog": "1.12.0",
+ "predis/predis": "1.*",
+ "psr/log": "1.0.0",
+ "zordius/lightncandy": "0.18"
+ },
+ "time": "2015-10-21 13:44:26",
+ "type": "library",
+ "installation-source": "source",
+ "autoload": {
+ "classmap": [
+ "adyen_gateway",
+ "amazon_gateway",
+ "gateway_common",
+ "globalcollect_gateway",
+ "paypal_gateway",
+ "worldpay_gateway"
+ ],
+ "files": [
+ "gateway_common/WmfFramework.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "GPL-2.0"
+ ],
+ "description": "Wikimedia Foundation payment processing library"
+ },
+ {
"name": "wikimedia/smash-pig",
"version": "dev-master",
"version_normalized": "9999999-dev",
"source": {
"type": "git",
"url":
"https://gerrit.wikimedia.org/r/wikimedia/fundraising/SmashPig.git",
- "reference": "60c9f5e68784e077b04f73757d12682020df1a72"
+ "reference": "24c6a96fe3763bdfe431f1eeb6af3795c530ab82"
},
"require": {
"amzn/login-and-pay-with-amazon-sdk-php": "dev-master",
@@ -843,45 +883,5 @@
"donations",
"payments"
]
- },
- {
- "name": "wikimedia/donation-interface",
- "version": "dev-master",
- "version_normalized": "9999999-dev",
- "source": {
- "type": "git",
- "url":
"https://gerrit.wikimedia.org/r/mediawiki/extensions/DonationInterface.git",
- "reference": "e9c479de7594f9e1d011fa344792cb1cca987aad"
- },
- "require": {
- "amzn/login-and-pay-with-amazon-sdk-php": "dev-master",
- "coderkungfu/php-queue": "dev-master",
- "fusesource/stomp-php": "2.1.*",
- "monolog/monolog": "1.12.0",
- "predis/predis": "1.*",
- "psr/log": "1.0.0",
- "zordius/lightncandy": "0.18"
- },
- "time": "2015-10-21 13:44:26",
- "type": "library",
- "installation-source": "source",
- "autoload": {
- "classmap": [
- "adyen_gateway",
- "amazon_gateway",
- "gateway_common",
- "globalcollect_gateway",
- "paypal_gateway",
- "worldpay_gateway"
- ],
- "files": [
- "gateway_common/WmfFramework.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "GPL-2.0"
- ],
- "description": "Wikimedia Foundation payment processing library"
}
]
diff --git
a/wikimedia/smash-pig/PaymentProviders/Worldpay/Audit/WpgReconciliationFile.php
b/wikimedia/smash-pig/PaymentProviders/Worldpay/Audit/WpgReconciliationFile.php
index 9125480..0f8547f 100644
---
a/wikimedia/smash-pig/PaymentProviders/Worldpay/Audit/WpgReconciliationFile.php
+++
b/wikimedia/smash-pig/PaymentProviders/Worldpay/Audit/WpgReconciliationFile.php
@@ -102,7 +102,7 @@
if ( $queue === 'refund' ) {
$msg['gross_currency'] = $record['CurrencyCode'];
$msg['gateway_parent_id'] = $record['OrderCode'];
- $msg['gateway_refund_id'] = $record['OrderCode'] . 'R';
+ $msg['gateway_refund_id'] = $record['OrderCode'];
$msg['type'] = 'refund';
return $msg;
}
diff --git
a/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/Data/audit/capture.txt
b/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/Data/audit/capture.txt
new file mode 100644
index 0000000..b11a196
--- /dev/null
+++ b/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/Data/audit/capture.txt
@@ -0,0 +1,2 @@
+OrderCode Date PaymentMethod Status CurrencyCode Amount
Commission Batch ID
+27943765.0 2015-10-04 07:51:54 CB-SSL CAPTURED EUR 10.00
144
diff --git
a/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/Data/audit/refund.txt
b/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/Data/audit/refund.txt
new file mode 100644
index 0000000..7168029
--- /dev/null
+++ b/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/Data/audit/refund.txt
@@ -0,0 +1,2 @@
+OrderCode Date PaymentMethod Status CurrencyCode Amount
Commission Batch ID
+27905662.1 2015-10-05 08:20:15 CARTEBLEUE-SSL REFUNDED EUR
-1.20 100
diff --git
a/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/phpunit/AuditTest.php
b/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/phpunit/AuditTest.php
new file mode 100644
index 0000000..a3b5cce
--- /dev/null
+++ b/wikimedia/smash-pig/PaymentProviders/Worldpay/Tests/phpunit/AuditTest.php
@@ -0,0 +1,56 @@
+<?php namespace SmashPig\PaymentProviders\Worldpay\Test;
+
+use SmashPig\Core\Configuration;
+use SmashPig\Core\Context;
+use SmashPig\PaymentProviders\Worldpay\Audit\WpgReconciliationFile;
+
+/**
+ * Verify Amazon audit file processor functions
+ */
+class AuditTest extends \BaseSmashPigUnitTestCase {
+ public function setUp() {
+ parent::setUp();
+ $config = new Configuration(
+ __DIR__ . '/../../../../config_defaults.php',
+ null,
+ 'Worldpay',
+ true
+ );
+ Context::init( $config );
+ }
+
+ public function testProcessDonation() {
+ $processor = new WpgReconciliationFile();
+ $output = $processor->parse( __DIR__ .
'/../Data/audit/capture.txt' );
+ $this->assertEquals( 1, count( $output ), 'Should have found
one donation' );
+ $actual = $output[0];
+ $expected = array(
+ 'gateway' => 'worldpay',
+ 'date' => 1443945114,
+ 'gross' => '10.00',
+ 'currency' => 'EUR',
+ 'gateway_txn_id' => '27943765.0',
+ 'payment_method' => 'cc',
+ 'payment_submethod' => 'mc',
+ );
+ $this->assertEquals( $expected, $actual, 'Did not parse
donation correctly' );
+ }
+
+ public function testProcessRefund() {
+ $processor = new WpgReconciliationFile();
+ $output = $processor->parse( __DIR__ .
'/../Data/audit/refund.txt' );
+ $this->assertEquals( 1, count( $output ), 'Should have found
one refund' );
+ $actual = $output[0];
+ $expected = array(
+ 'gateway' => 'worldpay',
+ 'date' => 1444033215,
+ 'gross' => '-1.20',
+ 'gateway_parent_id' => '27905662.1',
+ 'gross_currency' => 'EUR',
+ 'type' => 'refund',
+ 'gateway_refund_id' => '27905662.1',
+ );
+ $this->assertEquals( $expected, $actual, 'Did not parse refund
correctly' );
+ }
+
+}
diff --git a/wikimedia/smash-pig/phpunit.xml b/wikimedia/smash-pig/phpunit.xml
index c6a4029..6a7c8e0 100644
--- a/wikimedia/smash-pig/phpunit.xml
+++ b/wikimedia/smash-pig/phpunit.xml
@@ -10,5 +10,8 @@
<testsuite name="AstroPay tests">
<directory>PaymentProviders/AstroPay/Tests/phpunit</directory>
</testsuite>
+ <testsuite name="Worldpay tests">
+ <directory>PaymentProviders/Worldpay/Tests/phpunit</directory>
+ </testsuite>
</testsuites>
</phpunit>
--
To view, visit https://gerrit.wikimedia.org/r/249562
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6218ba3eda51452bb3e320d0dd8b767e996a8fc4
Gerrit-PatchSet: 1
Gerrit-Project: wikimedia/fundraising/crm/vendor
Gerrit-Branch: master
Gerrit-Owner: Awight <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits