0.04 BUSINESS_ONLINEPAYMENT_PAYFLOWPRO_0_04
authorivan <ivan>
Wed, 11 Oct 2006 11:01:42 +0000 (11:01 +0000)
committerivan <ivan>
Wed, 11 Oct 2006 11:01:42 +0000 (11:01 +0000)
Changes
PayflowPro.pm
t/bad_auth.t
t/credit_card.t

diff --git a/Changes b/Changes
index 3cc52ee..65ec304 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,11 @@
 Revision history for Perl extension Business::OnlinePayment::PayflowPro.
 
+0.04  Wed Oct 11 04:00:36 PDT 2006
+       - Prevent unnecessary warnings when no AVS response elements are
+         received, patch from Michael Peters <mpeters@plusthree.com>
+       - have tests work with environment variables
+       - forgot to increment the version number in 0.03
+
 0.03  Tue Aug  2 17:56:11 PDT 2005
        - Fix inadvertant clobbering of zip code, patch from
          <phil@perkpartners.com>, CPAN bug #13896
index 0051fb9..fe70d7a 100644 (file)
@@ -14,7 +14,7 @@ require Exporter;
 @ISA = qw(Exporter AutoLoader Business::OnlinePayment);
 @EXPORT = qw();
 @EXPORT_OK = qw();
-$VERSION = '0.02';
+$VERSION = '0.04';
 
 sub set_defaults {
     my $self = shift;
@@ -197,14 +197,16 @@ sub submit {
       $self->authorization( $response->{'AUTHCODE'} );
       $self->order_number(  $response->{'PNREF'}    );
       my $avs_code = '';
-      if ( $response->{AVSADDR} eq 'Y' && $response->{AVSZIP} eq 'Y' ) {
-        $avs_code = 'Y';
-      } elsif ( $response->{AVSADDR} eq 'Y' ) {
-        $avs_code = 'A';
-      } elsif ( $response->{AVSZIP} eq 'Y' ) {
-        $avs_code = 'Z';
-      } elsif ( $response->{AVSADDR} eq 'N' || $response->{AVSZIP} eq 'N' ) {
-        $avs_code = 'N';
+      if ( exists $response->{AVSADDR} || exists $response->{AVSZIP} ) {
+        if ( $response->{AVSADDR} eq 'Y' && $response->{AVSZIP} eq 'Y' ) {
+          $avs_code = 'Y';
+        } elsif ( $response->{AVSADDR} eq 'Y' ) {
+          $avs_code = 'A';
+        } elsif ( $response->{AVSZIP} eq 'Y' ) {
+          $avs_code = 'Z';
+        } elsif ( $response->{AVSADDR} eq 'N' || $response->{AVSZIP} eq 'N' ) {
+          $avs_code = 'N';
+        }
       }
       $self->avs_code(      $avs_code               );
       $self->cvv2_code(     $response->{'CVV2MATCH'});
index 2ed6e69..40db574 100644 (file)
@@ -2,16 +2,20 @@ BEGIN { $| = 1; print "1..1\n"; }
 
 use Business::OnlinePayment;
 
+die "set environment variables to test: PFPRO_USER, PFPRO_VENDOR, PFPRO_PWD, ".
+    "and optionally PFPRO_PARTNER and PFPRO_CERT_PATH\n"
+  unless $ENV{'PFPRO_USER'} && $ENV{'PFPRO_VENDOR'} && $ENV{'PFPRO_PWD'};
+
 my $tx = new Business::OnlinePayment("PayflowPro",
-    #'vendor'    => 'your_vendor',
-    'partner'   => 'verisign',
-    'cert_path' => '/home/ivan/Business-OnlinePayment-PayflowPro.docs/verisign/payflowpro/linux/certs/',
+    'vendor'    => $ENV{PFPRO_VENDOR} ,
+    'partner'   => ( $ENV{PFPRO_PARTNER} || 'verisign' ),
+    'cert_path' => ( $ENV{PFPRO_CERT_PATH} || '.' ) ,
 );
 
 $tx->content(
     type           => 'VISA',
-    login          => 'test231',
-    password       => '231test',
+    login          => $ENV{'PFPRO_USER'},
+    password       => $ENV{'PFPRO_PWD'},
     action         => 'Normal Authorization',
     description    => 'Business::OnlinePayment::PayflowPro visa test',
     amount         => '0.01',
@@ -26,7 +30,7 @@ $tx->content(
     #card_number    => '4007000000027',
     #card_number    => '4111111111111111',
     card_number    => '4111111111111112',
-    expiration     => '12/2004',
+    expiration     => '12/2009',
 );
 
 $tx->test_transaction(1);
index 1ca1be7..6ba927d 100644 (file)
@@ -2,16 +2,20 @@ BEGIN { $| = 1; print "1..1\n"; }
 
 use Business::OnlinePayment;
 
+die "set environment variables to test: PFPRO_USER, PFPRO_VENDOR, PFPRO_PWD, ".
+    "and optionally PFPRO_PARTNER and PFPRO_CERT_PATH\n"
+  unless $ENV{'PFPRO_USER'} && $ENV{'PFPRO_VENDOR'} && $ENV{'PFPRO_PWD'};
+
 my $tx = new Business::OnlinePayment("PayflowPro",
-    #'vendor'    => 'your_vendor',
-    'partner'   => 'verisign',
-    'cert_path' => '/home/ivan/Business-OnlinePayment-PayflowPro.docs/verisign/payflowpro/linux/certs/',
+    'vendor'    => $ENV{PFPRO_VENDOR} ,
+    'partner'   => ( $ENV{PFPRO_PARTNER} || 'verisign' ),
+    'cert_path' => ( $ENV{PFPRO_CERT_PATH} || '.' ) ,
 );
 
 $tx->content(
     type           => 'VISA',
-    login          => 'test231',
-    password       => '231test',
+    login          => $ENV{'PFPRO_USER'},
+    password       => $ENV{'PFPRO_PWD'},
     action         => 'Normal Authorization',
     description    => 'Business::OnlinePayment::PayflowPro visa test',
     amount         => '0.01',
@@ -25,7 +29,7 @@ $tx->content(
     email          => 'ivan-payflowpro@420.am',
     #card_number    => '4007000000027',
     card_number    => '4111111111111111',
-    expiration     => '12/2004',
+    expiration     => '12/2009',
 );
 
 $tx->test_transaction(1);