Allow taxes to be an array reference
[Business-OnlinePayment-InternetSecure.git] / t / 20emit.t
index 1f24ea1..2fca9bd 100755 (executable)
@@ -1,6 +1,6 @@
-# vim:set syntax=perl:
+# vim:set syntax=perl encoding=utf-8:
 
-use Test::More tests => 4 + 2;
+use Test::More tests => 4 + 3;
 
 BEGIN { use_ok('Business::OnlinePayment') };
 BEGIN { use_ok('Business::OnlinePayment::InternetSecure') };
@@ -32,7 +32,7 @@ use constant TRANSACTIONS => (
 
                amount          => undef,
                currency        => 'USD',
-               taxes           => 'GST PST',
+               taxes           => 'HST',
 
                description => [
                                {
@@ -44,11 +44,12 @@ use constant TRANSACTIONS => (
                                {
                                amount          => 5.65,
                                description     => 'Shipping',
+                               taxes           => 'GST PST',
                                },
                                {
                                amount          => 10.00,
                                description     => 'Some HST example',
-                               taxes           => 'HST',
+                               taxes           => [ 'GST', 'PST' ],
                                },
                                ],
        },
@@ -63,6 +64,21 @@ use constant TRANSACTIONS => (
                name            => "Fr\x{e9}d\x{e9}ric Bri\x{e8}re",
 
                amount          => 12.95,
+               description     => "Box o' goodies",
+               currency        => 'USD',
+               taxes           => 'GST',
+       },
+       {
+               _test           => -1,
+
+               action          => 'Normal Authorization',
+
+               card_number     => '5111-1111-1111-1111',
+               exp_date        => '0704',
+
+               name            => "Fr\x{e9}d\x{e9}ric Bri\x{e8}re",
+
+               amount          => 13.95,
        },
 );
 
@@ -95,7 +111,7 @@ __DATA__
   <xxxCCYear>2004</xxxCCYear>
   <CVV2>1</CVV2>
   <CVV2Indicator>000</CVV2Indicator>
-  <Products>9.99::5::a 001::Some product::{USD}{GST}{PST}|5.65::1::::Shipping::{USD}{GST}{PST}|10.00::1::::Some HST example::{USD}{HST}</Products>
+  <Products>9.99::5::a 001::Some product::{USD}{HST}|5.65::1::::Shipping::{USD}{GST}{PST}|10.00::1::::Some HST example::{USD}{GST}{PST}</Products>
   <xxxName>Frédéric Brière</xxxName>
   <xxxCompany></xxxCompany>
   <xxxAddress>123 Street</xxxAddress>
@@ -124,7 +140,36 @@ __DATA__
   <xxxCCYear>2004</xxxCCYear>
   <CVV2>0</CVV2>
   <CVV2Indicator></CVV2Indicator>
-  <Products>12.95::1::::::{CAD}{TEST}</Products>
+  <Products>12.95::1::::Box o' goodies::{USD}{GST}{TEST}</Products>
+  <xxxName>Frédéric Brière</xxxName>
+  <xxxCompany></xxxCompany>
+  <xxxAddress></xxxAddress>
+  <xxxCity></xxxCity>
+  <xxxProvince></xxxProvince>
+  <xxxPostal></xxxPostal>
+  <xxxCountry></xxxCountry>
+  <xxxPhone></xxxPhone>
+  <xxxEmail></xxxEmail>
+  <xxxShippingName></xxxShippingName>
+  <xxxShippingCompany></xxxShippingCompany>
+  <xxxShippingAddress></xxxShippingAddress>
+  <xxxShippingCity></xxxShippingCity>
+  <xxxShippingProvince></xxxShippingProvince>
+  <xxxShippingPostal></xxxShippingPostal>
+  <xxxShippingCountry></xxxShippingCountry>
+  <xxxShippingPhone></xxxShippingPhone>
+  <xxxShippingEmail></xxxShippingEmail>
+</TranxRequest>
+
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<TranxRequest>
+  <MerchantNumber>0000</MerchantNumber>
+  <xxxCard_Number>5111111111111111</xxxCard_Number>
+  <xxxCCMonth>07</xxxCCMonth>
+  <xxxCCYear>2004</xxxCCYear>
+  <CVV2>0</CVV2>
+  <CVV2Indicator></CVV2Indicator>
+  <Products>13.95::1::::::{CAD}{TESTD}</Products>
   <xxxName>Frédéric Brière</xxxName>
   <xxxCompany></xxxCompany>
   <xxxAddress></xxxAddress>