#!/bin/env perl BEGIN { unless(grep /blib/, @INC) { chdir 't' if -d 't'; unshift @INC, '../lib' if -d '../lib'; } } use strict; use Test; use SOAP::Lite; plan tests => 40; my($a, $s, $r, $serialized, $deserialized); $deserialized = SOAP::Custom::XML::Deserializer -> deserialize(join '', ); ok(ref $deserialized); $r = $deserialized->valueof('/Envelope/Body'); ok(ref $r); my @portfolios = $r->Report->Request->Composition->PortfolioDistribution; ok(@portfolios == 6); foreach my $portfolio (@portfolios) { # test attributes print $portfolio->type, " ", $portfolio->date, "\n"; ok($portfolio->type && $portfolio->date); foreach my $row ($portfolio->Row) { # test elements print " ", $row->Element, " ", $row->Value, "\n"; ok($row->Element && $row->Value); } } __DATA__
61744J366
Returned no data for request: PortfolioDistribution Returned no data for request: PortfolioDistribution Returned no data for request: PortfolioDistribution Returned no data for request: PortfolioDistribution Could not retrieve PortfolioDistribution Could not retrieve PortfolioDistribution Could not retrieve PortfolioDistribution Could not retrieve PortfolioDistribution Common Stocks 0.9991 Other 0.0021 Cash & Cash Equivalents -0.0012 General Electric Company 0.0458 Cisco Systems Inc 0.033 Microsoft Corporation 0.0263 Exxon Mobil Corp. 0.0263 Pfizer, Inc. 0.0231 Intel Corporation 0.0209 Citigroup Inc 0.02 Emc Corp. 0.0185 American International Group, Inc. 0.0181 Oracle Corporation 0.0172 Pharmaceuticals 0.0941 Communications Equipment 0.0857 Computers & Peripherals 0.0764 Diversified Financials 0.0724 Industrial Conglomerates 0.0581 Diversified Telecommunication Services 0.058 Software 0.056 Other 0.5002 Cash & Cash Equivalents -0.0012 Information Technology 0.2964 Financials 0.154 Health Care 0.1265 Consumer Discretionary 0.1026 Industrials 0.0874 Telecommunication Services 0.0632 Consumer Staples 0.0575 Other 0.1136 Cash & Cash Equivalents -0.0012