summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2021-03-30 10:35:55 -0700
committerIvan Kohler <ivan@freeside.biz>2021-03-30 10:35:55 -0700
commitf471ec6ca2456ddabfeaf42949a077fc0b326ff0 (patch)
tree69a2bb8b23dad507693e2d927bf7020a3be45d49
parentacf17e1d6e2e4233b800a56ca6fead3d205a5f7f (diff)
Update tests for new test server
-rw-r--r--Changes1
-rw-r--r--IPPay.pm1
-rw-r--r--README3
-rw-r--r--t/card.t43
4 files changed, 25 insertions, 23 deletions
diff --git a/Changes b/Changes
index 0a104a7..f297a16 100644
--- a/Changes
+++ b/Changes
@@ -4,6 +4,7 @@ Revision history for Perl extension Business::OnlinePayment::IPPay.
- ACH SEC code: Allow setting, default to CCD for business accounts,
PPD otherwise (was: always PPD)
- doc: Update copyright and maintainer information
+ - Update tests for new test server
0.10 unreleased (2015)
- UserIPAddr is now UserIPAddress
diff --git a/IPPay.pm b/IPPay.pm
index 7f15fcc..1fca678 100644
--- a/IPPay.pm
+++ b/IPPay.pm
@@ -217,6 +217,7 @@ sub submit {
}
if ($self->test_transaction()) {
$content{'login'} = 'TESTTERMINAL';
+ $self->server('testgtwy.ippay.com') if $self->server eq 'gtwy.ippay.com';
}
$self->content(%content);
diff --git a/README b/README
index b8aeb7c..e82c2d7 100644
--- a/README
+++ b/README
@@ -9,7 +9,8 @@ This is Business::OnlinePayment::IPPay, a Business::OnlinePayment backend
module for IPPay. It is only useful if you have a merchant account with
IPPay Merchant Services: http://www.ippay.com
-This module implements the IPPay XML Product Specification Revision 1.1.2
+This module implemented the IPPay XML Product Specification Revision 1.1.2
+(historically), updated in 2021 using revision 1-1-9.1 (September 2018).
Jeff Finucane is the original author. Mr. Kohles and Mr. Kohler provided
material for cribbing.
diff --git a/t/card.t b/t/card.t
index 8564fcb..f00ce4e 100644
--- a/t/card.t
+++ b/t/card.t
@@ -66,6 +66,7 @@ my $voidable_amount = 0;
authorization => qr/^$/,
avs_code => '', # so rather pointless :\
cvv2_response => '', # ...
+ order_number => qr/^$/,
);
}
@@ -90,10 +91,7 @@ my $voidable_amount = 0;
}
# authorization void test
-SKIP: {
- #XXX void is returning "The transaction type is not a valid transaction type."
- # with current IPPay. did something change about the API, is this broken?
- skip 'Reverse Authorization not currently working (against test account?)', 7;
+{
my $tx = Business::OnlinePayment->new("IPPay", %opt);
$tx->content(%content, action => 'authorization only', amount => '3.00' );
@@ -110,10 +108,10 @@ SKIP: {
desc => "reverse authorization",
is_success => 1,
result_code => '000',
- error_message => 'APPROVED',
+ error_message => 'VOID SUCCESSFUL',
authorization => qr/TEST\d{2}/,
avs_code => '', # so rather pointless :\
- cvv2_response => '', # ...
+ cvv2_response => 'P', # ...
);
}
else {
@@ -122,7 +120,7 @@ SKIP: {
}
# post authorization test
-SKIP: {
+{
my $tx = new Business::OnlinePayment( "IPPay", %opt );
$tx->content( %content, 'action' => "post authorization",
'amount' => $postable_amount, # not required
@@ -141,7 +139,7 @@ SKIP: {
}
# void test
-SKIP: {
+{
my $tx = new Business::OnlinePayment( "IPPay", %opt );
$tx->content( %content, 'action' => "Void",
'order_number' => $voidable,
@@ -152,15 +150,15 @@ SKIP: {
desc => "void",
is_success => 1,
result_code => '000',
- error_message => 'VOID PROCESSED',
- authorization => qr/^$voidable_auth$/,
+ error_message => 'VOID SUCCESSFUL',
+ authorization => qr/TEST\d{2}/,
avs_code => '',
- cvv2_response => '',
+ cvv2_response => 'P',
);
}
# credit test
-SKIP: {
+{
my $tx = new Business::OnlinePayment( "IPPay", %opt );
$tx->content( %content, 'action' => "credit");
tx_check(
@@ -168,10 +166,10 @@ SKIP: {
desc => "credit",
is_success => 1,
result_code => '000',
- error_message => 'RETURN ACCEPTED',
- authorization => qr/\d{6}/,
+ error_message => 'APPROVED',
+ authorization => qr/TEST\d{2}/,
avs_code => '',
- cvv2_response => '',
+ cvv2_response => 'P',
);
}
@@ -183,13 +181,14 @@ sub tx_check {
$tx->test_transaction(1);
$tx->submit;
- is( $tx->is_success, $o{is_success}, "$o{desc}: " . tx_info($tx) );
- is( $tx->result_code, $o{result_code}, "result_code(): RESULT" );
- is( $tx->error_message, $o{error_message}, "error_message() / RESPMSG" );
- like( $tx->authorization, $o{authorization}, "authorization() / AUTHCODE" );
- is( $tx->avs_code, $o{avs_code}, "avs_code() / AVSADDR and AVSZIP" );
- is( $tx->cvv2_response, $o{cvv2_response}, "cvv2_response() / CVV2MATCH" );
- like( $tx->order_number, qr/^\w{18}/, "order_number() / PNREF" );
+ is( $tx->is_success, $o{is_success}, "$o{desc}: ". tx_info($tx) );
+ is( $tx->result_code, $o{result_code}, "$o{desc}: result_code()" );
+ is( $tx->error_message, $o{error_message}, "$o{desc}: error_message()" );
+ like( $tx->authorization, $o{authorization}, "$o{desc}: authorization()" );
+ is( $tx->avs_code, $o{avs_code}, "$o{desc}: avs_code()" );
+ is( $tx->cvv2_response, $o{cvv2_response}, "$o{desc}: cvv2_response()" );
+ like( $tx->order_number, $o{order_number}
+ || qr/^\w{18}/, "$o{desc}: order_number()" );
}
sub tx_info {