From: fbriere Date: Sat, 19 Aug 2006 18:14:27 +0000 (+0000) Subject: Added backwards-compatible support for exp_date X-Git-Tag: V0_04~7 X-Git-Url: http://git.freeside.biz/gitweb/?p=Business-OnlinePayment-InternetSecure.git;a=commitdiff_plain;h=e97a2d3512479f30718872b70196a2be18ec2b2e Added backwards-compatible support for exp_date --- diff --git a/InternetSecure.pm b/InternetSecure.pm index c41e3ce..65847f1 100755 --- a/InternetSecure.pm +++ b/InternetSecure.pm @@ -135,6 +135,12 @@ sub to_xml { my %content = $self->content; + # Backwards-compatible support for exp_date + if (exists $content{exp_date} && ! exists $content{expiration}) { + $content{expiration} = delete $content{exp_date}; + $self->content(%content); + } + $self->required_fields(qw(action card_number expiration)); croak "Unsupported transaction type: $content{type}" diff --git a/t/exp_date.t b/t/exp_date.t new file mode 100755 index 0000000..1c52314 --- /dev/null +++ b/t/exp_date.t @@ -0,0 +1,52 @@ +# vim:set syntax=perl encoding=utf-8: + +# Check for backwards-compatible support for exp_date + +use Test::More tests => 2 + 1; + +BEGIN { use_ok('Business::OnlinePayment') }; +BEGIN { use_ok('XML::Simple', qw(xml_in)) }; + +my $txn = new Business::OnlinePayment 'InternetSecure', merchant_id => '0000'; + +$txn->content( + action => 'Normal Authorization', + + card_number => '5111-1111-1111-1111', + exp_date => '0704', + + amount => 13.95, + ); + +is_deeply( xml_in($txn->to_xml), xml_in(<<__EOF__) ); + + + 0000 + 5111111111111111 + 07 + 2004 + 0 + + 13.95::1::::::{CAD} + + + + + + + + + + + + + + + + + + + + +__EOF__ +