Test whether ValueOfContents works in Domestic rate estimates.

This commit is contained in:
Colin Kuskie 2009-09-27 14:25:50 -07:00
parent 4ee1f56aa3
commit 2b4bfb8eec
2 changed files with 67 additions and 0 deletions

View file

@ -755,6 +755,66 @@ SKIP: {
}
$properties = $driver->get();
$properties->{addInsurance} = 1;
$driver->update($properties);
$xml = $driver->buildXML($cart, @shippableUnits);
my $xmlData = XMLin($xml,
KeepRoot => 1,
ForceArray => ['Package'],
);
cmp_deeply(
$xmlData,
{
RateV3Request => {
USERID => $userId,
Package => [
{
ID => 0,
ZipDestination => '53715', ZipOrigination => '97123',
Pounds => '1', Ounces => '8',
Size => 'REGULAR', Service => 'PRIORITY',
Machinable => 'true', ValueOfContents => 7.50,
},
],
}
},
'buildXML: contains ValueOfContents when insurance is requested'
);
like($xml, qr/RateV3Request USERID.+?Package ID=.+?Service.+?ZipOrigination.+?ZipDestination.+?Pounds.+?Ounces.+?Size.+?Machinable/, '... and tag order');
SKIP: {
skip 'No userId for testing', 2 unless $hasRealUserId;
my $response = $driver->_doXmlRequest($xml);
ok($response->is_success, '... _doXmlRequest to USPS successful');
my $xmlData = XMLin($response->content, ForceArray => [qw/Package/],);
diag $response->content;
# cmp_deeply(
# $xmlData,
# {
# Package => [
# {
# ID => 0,
# ZipOrigination => ignore(), ZipDestination => ignore(),
# Ounces => ignore(), Pounds => ignore(),
# Size => ignore(), Zone => ignore(),
# Postage => {
# CLASSID => ignore(),
# MailService => ignore(),
# Rate => num(8,8), ##A number around 10...
# }
# },
# ],
# },
# '... returned data from USPS in correct format. If this test fails, the driver may need to be updated'
# );
}
#----------------------------------------------------------------------------
# Cleanup
END {