1 # vim:set syntax=perl encoding=utf-8:
3 use Test::More tests => 4 + 3;
5 BEGIN { use_ok('Business::OnlinePayment') };
6 BEGIN { use_ok('Business::OnlinePayment::InternetSecure') };
7 BEGIN { use_ok('XML::Simple', qw(xml_in)) };
8 BEGIN { use_ok('Encode') };
10 use charnames ':full'; # Why doesn't this work with use_ok?
12 use constant TRANSACTIONS => (
16 action => 'Normal Authorization',
19 card_number => '4111 1111 1111 1111',
20 exp_date => '2004-07',
23 name => "Fr\N{LATIN SMALL LETTER E WITH ACUTE}d\N{LATIN SMALL LETTER E WITH ACUTE}ric Bri\N{LATIN SMALL LETTER E WITH GRAVE}re",
25 address => '123 Street',
30 phone => '(555) 555-1212',
31 email => 'fbriere@fbriere.net',
42 description => 'Some product',
46 description => 'Shipping',
51 description => 'Some HST example',
52 taxes => [ 'GST', 'PST' ],
59 action => 'Normal Authorization',
61 card_number => '5111-1111-1111-1111',
64 name => "Fr\x{e9}d\x{e9}ric Bri\x{e8}re",
67 description => "Box o' goodies",
74 action => 'Normal Authorization',
76 card_number => '5111-1111-1111-1111',
79 name => "Fr\x{e9}d\x{e9}ric Bri\x{e8}re",
86 my $txn = new Business::OnlinePayment 'InternetSecure', merchant_id => '0000';
88 foreach (TRANSACTIONS) {
89 $txn->test_transaction(delete $_->{_test});
93 # Work around bug #17687
106 <?xml version="1.0" encoding="utf-8" standalone="yes"?>
108 <MerchantNumber>0000</MerchantNumber>
109 <xxxCard_Number>4111111111111111</xxxCard_Number>
110 <xxxCCMonth>07</xxxCCMonth>
111 <xxxCCYear>2004</xxxCCYear>
113 <CVV2Indicator>000</CVV2Indicator>
114 <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>
115 <xxxName>Frédéric Brière</xxxName>
116 <xxxCompany></xxxCompany>
117 <xxxAddress>123 Street</xxxAddress>
118 <xxxCity>Metropolis</xxxCity>
119 <xxxProvince>ZZ</xxxProvince>
120 <xxxPostal>A1A 1A1</xxxPostal>
121 <xxxCountry>CA</xxxCountry>
122 <xxxPhone>(555) 555-1212</xxxPhone>
123 <xxxEmail>fbriere@fbriere.net</xxxEmail>
124 <xxxShippingName></xxxShippingName>
125 <xxxShippingCompany></xxxShippingCompany>
126 <xxxShippingAddress></xxxShippingAddress>
127 <xxxShippingCity></xxxShippingCity>
128 <xxxShippingProvince></xxxShippingProvince>
129 <xxxShippingPostal></xxxShippingPostal>
130 <xxxShippingCountry></xxxShippingCountry>
131 <xxxShippingPhone></xxxShippingPhone>
132 <xxxShippingEmail></xxxShippingEmail>
135 <?xml version="1.0" encoding="utf-8" standalone="yes"?>
137 <MerchantNumber>0000</MerchantNumber>
138 <xxxCard_Number>5111111111111111</xxxCard_Number>
139 <xxxCCMonth>07</xxxCCMonth>
140 <xxxCCYear>2004</xxxCCYear>
142 <CVV2Indicator></CVV2Indicator>
143 <Products>12.95::1::::Box o' goodies::{USD}{GST}{TEST}</Products>
144 <xxxName>Frédéric Brière</xxxName>
145 <xxxCompany></xxxCompany>
146 <xxxAddress></xxxAddress>
148 <xxxProvince></xxxProvince>
149 <xxxPostal></xxxPostal>
150 <xxxCountry></xxxCountry>
151 <xxxPhone></xxxPhone>
152 <xxxEmail></xxxEmail>
153 <xxxShippingName></xxxShippingName>
154 <xxxShippingCompany></xxxShippingCompany>
155 <xxxShippingAddress></xxxShippingAddress>
156 <xxxShippingCity></xxxShippingCity>
157 <xxxShippingProvince></xxxShippingProvince>
158 <xxxShippingPostal></xxxShippingPostal>
159 <xxxShippingCountry></xxxShippingCountry>
160 <xxxShippingPhone></xxxShippingPhone>
161 <xxxShippingEmail></xxxShippingEmail>
164 <?xml version="1.0" encoding="utf-8" standalone="yes"?>
166 <MerchantNumber>0000</MerchantNumber>
167 <xxxCard_Number>5111111111111111</xxxCard_Number>
168 <xxxCCMonth>07</xxxCCMonth>
169 <xxxCCYear>2004</xxxCCYear>
171 <CVV2Indicator></CVV2Indicator>
172 <Products>13.95::1::::::{CAD}{TESTD}</Products>
173 <xxxName>Frédéric Brière</xxxName>
174 <xxxCompany></xxxCompany>
175 <xxxAddress></xxxAddress>
177 <xxxProvince></xxxProvince>
178 <xxxPostal></xxxPostal>
179 <xxxCountry></xxxCountry>
180 <xxxPhone></xxxPhone>
181 <xxxEmail></xxxEmail>
182 <xxxShippingName></xxxShippingName>
183 <xxxShippingCompany></xxxShippingCompany>
184 <xxxShippingAddress></xxxShippingAddress>
185 <xxxShippingCity></xxxShippingCity>
186 <xxxShippingProvince></xxxShippingProvince>
187 <xxxShippingPostal></xxxShippingPostal>
188 <xxxShippingCountry></xxxShippingCountry>
189 <xxxShippingPhone></xxxShippingPhone>
190 <xxxShippingEmail></xxxShippingEmail>