From: fbriere Date: Sat, 19 Aug 2006 18:56:42 +0000 (+0000) Subject: Added support for CC type X-Git-Tag: V0_04~2 X-Git-Url: http://git.freeside.biz/gitweb/?p=Business-OnlinePayment-InternetSecure.git;a=commitdiff_plain;h=1e4d0e5efa809ecb0480d9040e8b373bcb4f2480 Added support for CC type --- diff --git a/InternetSecure.pm b/InternetSecure.pm index b6632ed..cde38d3 100755 --- a/InternetSecure.pm +++ b/InternetSecure.pm @@ -151,7 +151,7 @@ sub to_xml { croak "Unsupported transaction type: $content{type}" if $content{type} && ! grep lc($content{type}) eq lc($_), - values %{+CARD_TYPES}; + values %{+CARD_TYPES}, 'CC'; croak 'Unsupported action' unless $content{action} =~ /^Normal Authori[zs]ation$/i; @@ -434,6 +434,8 @@ Transaction type, being one of the following: =item - JCB +=item - CC + =back (This is actually ignored for the moment, and can be left blank or undefined.) diff --git a/t/types.t b/t/types.t new file mode 100755 index 0000000..97383e9 --- /dev/null +++ b/t/types.t @@ -0,0 +1,29 @@ +# vim:set syntax=perl encoding=utf-8: + +# Check for case-insensitivity and CC support in type + +use constant TYPES => ('Visa', 'viSa', 'CC'); + +use Test::More tests => 1 + TYPES; + +BEGIN { use_ok('Business::OnlinePayment') }; + +my $txn = new Business::OnlinePayment 'InternetSecure', merchant_id => '0000'; + +foreach my $type (TYPES) { + $txn->content( + action => 'Normal Authorization', + type => $type, + + card_number => '5111-1111-1111-1111', + exp_date => '0704', + + amount => 13.95, + ); + + # This will fail if type is not recognized + $txn->to_xml; + + pass("type: $type"); +} +