update test to use Test::More and add hardcoded test account from auth.net, RT#22076
[Business-OnlinePayment-AuthorizeNet.git] / t / capture.t
1 #!/usr/bin/perl -w
2
3 use Test::More;
4 require "t/lib/test_account.pl";
5
6 my($login, $password) = test_account_or_skip();
7 plan tests => 4;
8
9 use_ok 'Business::OnlinePayment';
10
11 my $tx = Business::OnlinePayment->new("AuthorizeNet");
12 $tx->server('test.authorize.net');
13 $tx->content(
14     type           => 'VISA',
15     login          => $login,
16     password       => $password,
17     action         => 'Authorization Only',
18     description    => 'Business::OnlinePayment visa test',
19     amount         => '49.95',
20     invoice_number => '100100',
21     customer_id    => 'jsk',
22     first_name     => 'Tofu',
23     last_name      => 'Beast',
24     address        => '123 Anystreet',
25     city           => 'Anywhere',
26     state          => 'UT',
27     zip            => '84058',
28     card_number    => '4007000000027',
29     expiration     => expiration_date(),
30 );
31 $tx->test_transaction(1); # test, dont really charge
32 $tx->submit();
33
34 ok($tx->is_success()) or diag $tx->error_message;
35
36 my $order_number = $tx->order_number;
37 like $order_number, qr/^\d+$/;
38
39 my $settle_tx = Business::OnlinePayment->new("AuthorizeNet");
40 $settle_tx->server('test.authorize.net');
41 $settle_tx->content(
42     type           => 'VISA',
43     login          => $login,
44     password       => $password,
45     action         => 'Post Authorization',
46     description    => 'Business::OnlinePayment visa test',
47     amount         => '49.95',
48     invoice_number => '100100',
49     order_number   => '111',
50     card_number    => '4007000000027',
51     expiration     => expiration_date(),
52 );
53
54 $settle_tx->test_transaction(1); # test, dont really charge
55 $settle_tx->submit();
56
57 ok($settle_tx->is_success()) || diag $settle_tx->error_message;