jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/355569 )
Change subject: Merge branch 'master' into deployment
......................................................................
Merge branch 'master' into deployment
0715cc0 Audit processors can read normalized fields in logs
a23b082 Unique-ify invoice ID for recurring
c974314 Payments-init consumer can handle 'currency' message field.
Change-Id: I694d02c19ea58a6e56d96fe000c4d7cfe4c7d2b0
---
D sites/all/modules/queue2civicrm/tests/data/payments-init.json
D sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php
D sites/all/modules/wmf_audit/tests/AdyenAuditTest.php
D
sites/all/modules/wmf_audit/tests/data/Adyen/donation_new/settlement_detail_report_batch_2.csv
D sites/all/modules/wmf_audit/tests/data/logs/payments-adyen-20170218.gz
5 files changed, 0 insertions(+), 350 deletions(-)
Approvals:
XenoRyet: Looks good to me, approved
jenkins-bot: Verified
diff --git a/sites/all/modules/queue2civicrm/tests/data/payments-init.json
b/sites/all/modules/queue2civicrm/tests/data/payments-init.json
deleted file mode 100644
index 7ddcc1b..0000000
--- a/sites/all/modules/queue2civicrm/tests/data/payments-init.json
+++ /dev/null
@@ -1,18 +0,0 @@
-<<<<<<< HEAD (9b7a74 Merge branch 'master' into deployment)
-=======
-{
- "contribution_tracking_id": "12345",
- "gateway": "testgateway",
- "order_id": "",
- "gateway_txn_id": "",
- "validation_action": "process",
- "payments_final_status": "complete",
- "payment_method": "paypal",
- "payment_submethod": "",
- "country": "IT",
- "amount": "2.00",
- "currency": "EUR",
- "server": "testpayments1002",
- "date": "1445990999"
-}
->>>>>>> BRANCH (c97431 Payments-init consumer can handle 'currency' message
field.)
diff --git
a/sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php
b/sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php
deleted file mode 100644
index c727d87..0000000
--- a/sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php
+++ /dev/null
@@ -1,120 +0,0 @@
-<<<<<<< HEAD (9b7a74 Merge branch 'master' into deployment)
-=======
-<?php
-use queue2civicrm\fredge\PaymentsInitQueueConsumer;
-use SmashPig\Core\Context;
-use SmashPig\Core\QueueConsumers\BaseQueueConsumer;
-
-/**
- * @group Queue2Civicrm
- */
-class PaymentsInitQueueTest extends BaseWmfDrupalPhpUnitTestCase {
-
- /**
- * @var PaymentsInitQueueConsumer
- */
- protected $consumer;
-
- public function setUp() {
- parent::setUp();
- $config = TestingSmashPigDbQueueConfiguration::instance();
- Context::initWithLogger( $config );
- $queue = BaseQueueConsumer::getQueue( 'test' );
- $queue->createTable( 'test' );
- $this->consumer = new PaymentsInitQueueConsumer(
- 'test'
- );
- }
-
- public function testValidMessage() {
- $message = $this->getMessage();
- $this->consumer->processMessage( $message );
-
- $this->compareMessageWithDb( $message );
- }
-
- /**
- * The first message for a ct_id / order_id pair needs to be complete
- *
- * @expectedException FredgeDataValidationException
- */
- public function testIncompleteMessage() {
- $message = $this->getMessage();
- unset( $message['payment_method'] );
- $this->consumer->processMessage( $message );
- }
-
- /**
- * After one complete message has been inserted, a second message
- * with the same ct_id / order_id can update only selected fields
- */
- public function testUpdatedMessage() {
- $message1 = $this->getMessage();
- $message2 = $this->getMessage();
- $message2['contribution_tracking_id'] =
$message1['contribution_tracking_id'];
- $message2['order_id'] = $message1['order_id'];
-
- $message1['payments_final_status'] = 'pending';
- $message2['payments_final_status'] = 'pending';
- unset( $message2['payment_method'] );
-
- $this->consumer->processMessage( $message1 );
- $this->compareMessageWithDb( $message1 );
-
- $this->consumer->processMessage( $message2 );
- $updated = array_merge(
- $message1, $message2
- );
- $this->compareMessageWithDb( $updated );
- }
-
- protected function compareMessageWithDb( $message ) {
- $dbEntries = $this->getDbEntries(
- $message['contribution_tracking_id'],
$message['order_id']
- );
- $this->assertEquals( 1, count( $dbEntries ) );
- $fields = array(
- 'gateway', 'gateway_txn_id', 'validation_action',
- 'payments_final_status', 'payment_method',
'payment_submethod',
- 'country', 'amount', 'server'
- );
- foreach ( $fields as $field ) {
- $this->assertEquals( $message[$field],
$dbEntries[0][$field] );
- }
- $this->assertEquals( $message['currency'],
$dbEntries[0]['currency_code'] );
- $this->assertEquals(
- $message['date'], wmf_common_date_civicrm_to_unix(
$dbEntries[0]['date'] )
- );
- }
-
- protected function getDbEntries( $ctId, $orderId ) {
- return Database::getConnection( 'default', 'fredge' )
- ->select( 'payments_initial', 'f' )
- ->fields( 'f', array(
- 'contribution_tracking_id', 'gateway',
'order_id',
- 'gateway_txn_id', 'validation_action',
'payments_final_status',
- 'payment_method', 'payment_submethod',
'country', 'amount',
- 'currency_code', 'server', 'date'
- ) )
- ->condition( 'contribution_tracking_id', $ctId )
- ->condition( 'order_id', $orderId )
- ->execute()
- ->fetchAll( PDO::FETCH_ASSOC );
- }
-
- /**
- * @return array
- */
- protected function getMessage() {
- $message = json_decode(
- file_get_contents( __DIR__ .
'/../data/payments-init.json' ),
- true
- );
- $ctId = mt_rand();
- $oId = $ctId . '.0';
- $message['contribution_tracking_id'] = $ctId;
- $message['order_id'] = $oId;
- return $message;
- }
-}
->>>>>>> BRANCH (c97431 Payments-init consumer can handle 'currency' message
field.)
diff --git a/sites/all/modules/wmf_audit/tests/AdyenAuditTest.php
b/sites/all/modules/wmf_audit/tests/AdyenAuditTest.php
deleted file mode 100644
index 1ba72c8..0000000
--- a/sites/all/modules/wmf_audit/tests/AdyenAuditTest.php
+++ /dev/null
@@ -1,209 +0,0 @@
-<<<<<<< HEAD (9b7a74 Merge branch 'master' into deployment)
-=======
-<?php
-
-/**
- * @group Adyen
- * @group WmfAudit
- */
-class AdyenAuditTest extends BaseWmfDrupalPhpUnitTestCase {
- static protected $messages;
-
- protected $contact_id;
- protected $contribution_ids = array();
-
- public function setUp() {
- parent::setUp();
- self::$messages = array();
-
- $dirs = array(
- 'wmf_audit_log_archive_dir' => __DIR__ . '/data/logs/',
- 'adyen_audit_recon_completed_dir' =>
$this->getTempDir(),
- 'adyen_audit_working_log_dir' => $this->getTempDir(),
- );
-
- foreach ( $dirs as $var => $dir ) {
- if ( !is_dir( $dir ) ) {
- mkdir( $dir );
- }
- variable_set( $var, $dir );
- }
-
- $old_working = glob( $dirs['adyen_audit_working_log_dir'] . '*'
);
- foreach ( $old_working as $zap ) {
- if ( is_file( $zap ) ) {
- unlink( $zap );
- }
- }
-
- variable_set( 'adyen_audit_log_search_past_days', 7 );
-
- // Fakedb doesn't fake the original txn for refunds, so add one
here
- $existing = wmf_civicrm_get_contributions_from_gateway_id(
'adyen', '4522268860022701' );
- if ( $existing ) {
- // Previous test run may have crashed before cleaning up
- $contribution = $existing[0];
- } else {
- $msg = array(
- 'contribution_tracking_id' => 92598312,
- 'currency' => 'USD',
- 'date' => 1455825706,
- 'email' => '[email protected]',
- 'gateway' => 'adyen',
- 'gateway_txn_id' => '4522268860022701',
- 'gross' => 1.00,
- 'payment_method' => 'cc',
- );
- $contribution =
wmf_civicrm_contribution_message_import( $msg );
- }
- $this->contact_id = $contribution['contact_id'];
- $this->contribution_ids[] = $contribution['id'];
-
- // and another for the chargeback
- $existing = wmf_civicrm_get_contributions_from_gateway_id(
'adyen', '4555568860022701' );
- if ( $existing ) {
- // Previous test run may have crashed before cleaning up
- $contribution = $existing[0];
- } else {
- $msg = array(
- 'contribution_tracking_id' => 92598318,
- 'currency' => 'USD',
- 'date' => 1443724034,
- 'email' => '[email protected]',
- 'gateway' => 'adyen',
- 'gateway_txn_id' => '4555568860022701',
- 'gross' => 1.00,
- 'payment_method' => 'cc',
- );
- $contribution =
wmf_civicrm_contribution_message_import( $msg );
- }
- $this->contact_id = $contribution['contact_id'];
- $this->contribution_ids[] = $contribution['id'];
- }
-
- public function tearDown() {
- foreach( $this->contribution_ids as $id ) {
- $this->callAPISuccess('Contribution', 'delete', array('id' => $id));
- }
-
- $this->callAPISuccess('Contact', 'delete', array('id' =>
$this->contact_id));
- parent::tearDown();
- }
-
- public function auditTestProvider() {
- return array(
- array( __DIR__ . '/data/Adyen/donation/', array(
- 'main' => array(
- array(
- 'contribution_tracking_id' =>
'33992337',
- 'country' => 'US',
- 'currency' => 'USD',
- 'date' => 1455862251,
- 'email' => '[email protected]',
- 'fee' => '0.24',
- 'first_name' => 'asdf',
- 'gateway' => 'adyen',
- 'gateway_account' =>
'TestMerchant',
- 'gateway_txn_id' =>
'5364893193133131',
- 'gross' => '1.00',
- 'language' => 'en',
- 'last_name' => 'asdff',
- 'order_id' => '33992337.0',
- 'payment_method' => 'cc',
- 'payment_submethod' => 'visa',
- 'user_ip' => '77.177.177.77',
- 'utm_campaign' =>
'C13_en.wikipedia.org',
- 'utm_medium' => 'sidebar',
- 'utm_source' => '..cc',
- 'settled_gross' => '0.76',
- 'settled_currency' => 'USD',
- 'settled_fee' => '0.24',
- ),
- ),
- ) ),
- array( __DIR__ . '/data/Adyen/donation_new/', array(
- 'main' => array(
- array(
- 'contribution_tracking_id' =>
'43992337',
- 'country' => 'US',
- 'currency' => 'USD',
- 'date' => 1487484651,
- 'email' => '[email protected]',
- 'fee' => '0.24',
- 'first_name' => 'asdf',
- 'gateway' => 'adyen',
- 'gateway_account' =>
'TestMerchant',
- 'gateway_txn_id' =>
'5364893193133131',
- 'gross' => '1.00',
- 'language' => 'en',
- 'last_name' => 'asdff',
- 'order_id' => '43992337.0',
- 'payment_method' => 'cc',
- 'payment_submethod' => 'visa',
- 'user_ip' => '77.177.177.77',
- 'utm_campaign' =>
'C13_en.wikipedia.org',
- 'utm_medium' => 'sidebar',
- 'utm_source' => '..cc',
- 'settled_gross' => '0.76',
- 'settled_currency' => 'USD',
- 'settled_fee' => '0.24',
- ),
- ),
- ) ),
- array( __DIR__ . '/data/Adyen/refund/', array(
- 'negative' => array(
- array(
- 'date' => 1455128736,
- 'gateway' => 'adyen',
- 'gateway_parent_id' =>
'4522268860022701',
- 'gateway_refund_id' =>
'4522268869855336',
- 'gross' => '1.00',
- 'gross_currency' => 'USD',
- 'type' => 'refund',
- ),
- ),
- ) ),
- array( __DIR__ . '/data/Adyen/chargeback/', array(
- 'negative' => array(
- array(
- 'date' => 1455128736,
- 'gateway' => 'adyen',
- 'gateway_parent_id' =>
'4555568860022701',
- 'gateway_refund_id' =>
'4555568869855336',
- 'gross' => '1.00',
- 'gross_currency' => 'USD',
- 'type' => 'chargeback',
- ),
- ),
- ) ),
- );
- }
-
- /**
- * @dataProvider auditTestProvider
- */
- public function testParseFiles( $path, $expectedMessages ) {
- variable_set( 'adyen_audit_recon_files_dir', $path );
-
- $this->runAuditor();
-
- $this->assertEquals( $expectedMessages, self::$messages );
- }
-
- protected function runAuditor() {
- $options = array(
- 'fakedb' => true,
- 'quiet' => true,
- 'test' => true,
- 'test_callback' => array( 'AdyenAuditTest',
'receiveMessages' ),
- #'verbose' => 'true', # Uncomment to debug.
- );
- $audit = new AdyenAuditProcessor( $options );
- $audit->run();
- }
-
- static public function receiveMessages( $msg, $type ) {
- self::$messages[$type][] = $msg;
- }
-}
->>>>>>> BRANCH (c97431 Payments-init consumer can handle 'currency' message
field.)
diff --git
a/sites/all/modules/wmf_audit/tests/data/Adyen/donation_new/settlement_detail_report_batch_2.csv
b/sites/all/modules/wmf_audit/tests/data/Adyen/donation_new/settlement_detail_report_batch_2.csv
deleted file mode 100644
index 9e27c2a..0000000
---
a/sites/all/modules/wmf_audit/tests/data/Adyen/donation_new/settlement_detail_report_batch_2.csv
+++ /dev/null
@@ -1,3 +0,0 @@
-Company Account,Merchant Account,Psp Reference,Merchant Reference,Payment
Method,Creation Date,TimeZone,Type,Modification Reference,Gross Currency,Gross
Debit (GC),Gross Credit (GC),Exchange Rate,Net Currency,Net Debit (NC),Net
Credit (NC),Commission (NC),Markup (NC),Scheme Fees (NC),Interchange
(NC),Payment Method Variant,Modification Merchant Reference,Batch
Number,Reserved4,Reserved5,Reserved6,Reserved7,Reserved8,Reserved9,Reserved10
-Wikimedia,WikimediaCOM,5364893193133131,43992337.0,visa,2017-02-18
22:10:51,PST,Settled,5364893193133131,USD,,1.00,1,USD,,0.76,,,0.02,0.22,visadebit,,2,,,,,,,
-Wikimedia,WikimediaCOM,,,,2017-02-18
23:53:26,PST,MerchantPayout,"TX2342222277XT batch 2, WikimediaCOM batch 2,
WikimediaCOM",EUR,,,,USD,0.76,,,,,,,,2,,,,,,,
diff --git
a/sites/all/modules/wmf_audit/tests/data/logs/payments-adyen-20170218.gz
b/sites/all/modules/wmf_audit/tests/data/logs/payments-adyen-20170218.gz
deleted file mode 100644
index fa976d1..0000000
--- a/sites/all/modules/wmf_audit/tests/data/logs/payments-adyen-20170218.gz
+++ /dev/null
Binary files differ
--
To view, visit https://gerrit.wikimedia.org/r/355569
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I694d02c19ea58a6e56d96fe000c4d7cfe4c7d2b0
Gerrit-PatchSet: 1
Gerrit-Project: wikimedia/fundraising/crm
Gerrit-Branch: deployment
Gerrit-Owner: XenoRyet <[email protected]>
Gerrit-Reviewer: XenoRyet <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits