#!/usr/bin/env perl
use_ok
'Net::FreshBooks::API'
;
my
@caught_out_xml
= ();
my
@fake_return_xml
=
map
{ read_file(
$_
) .
''
} (
't/test_data/client.list.res.xml'
,
't/test_data/client.get.res.xml'
,
);
my
$override
= Sub::Override->new(
'Net::FreshBooks::API::Base::send_xml_to_freshbooks'
=>
sub
{
my
$class
=
shift
;
push
@caught_out_xml
,
shift
;
return
shift
@fake_return_xml
;
}
);
my
$fb
= Net::FreshBooks::API->new(
{
auth_token
=>
'foo'
,
account_name
=>
'bar'
,
}
);
ok
$fb
,
"created the FB object"
;
my
$list
=
$fb
->client->list(
{
email
=>
'janedoe@freshbooks.com'
,
username
=>
'janedoe'
,
}
);
ok
$list
,
"got a list"
;
isa_ok
$list
,
'Net::FreshBooks::API::Iterator'
;
is_xml(
$caught_out_xml
[0],
read_file(
't/test_data/client.list.req.xml'
) .
''
,
"xml sent was correct for list"
);
is
$list
->total, 2,
"got 2 entries in total"
;
is
$list
->pages, 1,
"only one page of results"
;
my
$client
=
$list
->
next
;
ok
$client
,
"got a client"
;