Added support for <Error>
authorfbriere <fbriere>
Thu, 16 Feb 2006 23:35:10 +0000 (23:35 +0000)
committerfbriere <fbriere>
Thu, 16 Feb 2006 23:35:10 +0000 (23:35 +0000)
InternetSecure.pm
t/30parse.t

index a2c7fab..accc10b 100755 (executable)
@@ -264,6 +264,9 @@ sub parse_response {
                        CVV2ResponseCode        cvv2_response
                ));
        
+       # Completely undocumented field that sometimes override <Verbiage>
+       $self->error_message($response->{Error}) if $response->{Error};
+       
        $self->card_type(CARD_TYPES->{$self->card_type});
        
        $self->{products_raw} = $response->{Products};
index 8780731..2917a47 100755 (executable)
@@ -1,13 +1,14 @@
-use Test::More tests => 1 + 2 * 5;
+use Test::More tests => 1 + 2 * 6;
 
 BEGIN { use_ok('Business::OnlinePayment') };
 
 
-use constant FIELDS => (qw( result_code authorization total_amount ));
+use constant FIELDS => (qw( result_code authorization total_amount
+                               error_message ));
 
 use constant RESULTS => (
-               [ 1, '2000', 'T00000', 3.88 ],
-               [ 0, '98e05', undef, 3.88 ],
+               [ 1, '2000', 'T00000', 3.88, 'Test Approved' ],
+               [ 0, '98e05', undef, 3.88, 'Real error message' ],
        );
 
 
@@ -111,6 +112,7 @@ __DATA__
   <Page>98e05</Page>
   <ApprovalCode />
   <Verbiage>Incorrect Card Number - Please Retry</Verbiage>
+  <Error>Real error message</Error>
   <TotalAmount>3.88</TotalAmount>
   <Products>
     <product>