Net-Radio-Location-SUPL-Test
view release on metacpan or search on metacpan
t/01-decode.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use Test::Differences;
plan tests => 5;
use Net::Radio::Location::SUPL::XS;
my $supl_pkt = pack( "H*", "002b0100004c4d0e0e110e3ad7107bd299abd33a81a34c80c1a21c75ae20f7a53357a6750346991990000a" );
my $supl_pdu = Net::Radio::Location::SUPL::XS::decode_ulp_pdu($supl_pkt);
isa_ok($supl_pdu, "Net::Radio::Location::SUPL::XS::ULP_PDU_t");
my $dump_expect = <<'EOD';
ULP-PDU ::= {
length: 43
version: Version ::= {
maj: 1
min: 0
servind: 0
}
sessionID: SessionID ::= {
slpSessionID: SlpSessionID ::= {
sessionID: 31 34 38 38
slpId: supl.vodafone.com
}
}
message: SUPLINIT ::= {
posMethod: 3
sLPAddress: supl.vodafone.com
qoP: QoP ::= {
horacc: 25
maxLocAge: 0
delay: 5
}
sLPMode: 0
}
}
EOD
chomp( $dump_expect );
my $dump = $supl_pdu->dump();
my $xml_expect = <<'EOX';
<ULP-PDU>
<length>43</length>
<version>
<maj>1</maj>
<min>0</min>
<servind>0</servind>
</version>
<sessionID>
<slpSessionID>
<sessionID>31 34 38 38</sessionID>
<slpId>
<fQDN>supl.vodafone.com</fQDN>
</slpId>
</slpSessionID>
</sessionID>
<message>
<msSUPLINIT>
<posMethod><agpsSETbasedpref/></posMethod>
<sLPAddress>
<fQDN>supl.vodafone.com</fQDN>
( run in 3.286 seconds using v1.01-cache-2.11-cpan-5837b0d9d2c )