1#!/usr/bin/perl -w
2package Pod::WSDL;
3use Test::More tests => 4;
4BEGIN {use_ok('Pod::WSDL');}
5use lib length $0 > 11 ? substr $0, 0, length($0) - 17 : '.';
6use strict;
7use warnings;
8use XML::XPath;
9
10my $p = new Pod::WSDL(source => 'My::ServiceTest',
11	               location => 'http://localhost/My/Test',
12	               pretty => 1,
13	               withDocumentation => 1);
14
15my $xmlOutput = $p->WSDL;
16my $xp = XML::XPath->new(xml => $xmlOutput);
17
18#print $xmlOutput;
19#print XML::XPath::XMLParser::as_string(($xp->find('/wsdl:definitions/wsdl:service')->get_nodelist())[0])
20# test general structure
21ok($xp->exists('/wsdl:definitions/wsdl:service[@name="MyServiceTestHandlerService"]'), 'Found wsdl:service element in xml output.');
22ok($xp->exists('/wsdl:definitions/wsdl:service[@name="MyServiceTestHandlerService"]/wsdl:port[@binding="impl:MyServiceTestSoapBinding" and @name="MyServiceTest"]'), 'Found wsdl:port in wsdl:service element.');
23ok($xp->exists('/wsdl:definitions/wsdl:service[@name="MyServiceTestHandlerService"]/wsdl:port[@binding="impl:MyServiceTestSoapBinding" and @name="MyServiceTest"]/wsdlsoap:address[@location="http://localhost/My/Test"]'), 'Found wsdlsoap:address in wsdl:port element.');
24
25__END__
26
27<wsdl:service name="MyServiceTestHandlerService">
28	<wsdl:port binding="impl:MyServiceTestSoapBinding" name="MyServiceTest">
29        <wsdlsoap:address location="http://localhost/My/Test" />
30	</wsdl:port>
31</wsdl:service>
32