import SOAP-WSDL 1.27 from CPAN
git-cpan-module: SOAP-WSDL git-cpan-version: 1.27 git-cpan-authorid: MKUTTER git-cpan-file: authors/id/M/MK/MKUTTER/SOAP-WSDL-1.27.tar.gz
This commit is contained in:
1 parent
7ca2154ad6
commit
2bad767211
389 files changed
+2374
-28345
No files matched your search
@@ -1,11 +0,0 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use Test::More tests => 2; #qw(no_plan);
|
||||
|
||||
use_ok qw(SOAP::WSDL::XSD::ComplexType);
|
||||
|
||||
my $obj = SOAP::WSDL::XSD::ComplexType->new();
|
||||
$obj->set_flavor('extension');
|
||||
|
||||
eval { $obj->serialize('foo') };
|
||||
like $@, qr{sorry, \s we \s just}xsm;
|
||||
@@ -1,43 +0,0 @@
|
||||
package Foo;
|
||||
sub serialize {
|
||||
return "serialized $_[1] $_[2]";
|
||||
}
|
||||
package main;
|
||||
use strict;
|
||||
use warnings;
|
||||
use Test::More tests => 12;
|
||||
|
||||
use_ok qw(SOAP::WSDL::XSD::Element);
|
||||
|
||||
my $element = SOAP::WSDL::XSD::Element->new();
|
||||
|
||||
is $element->first_simpleType(), undef;
|
||||
|
||||
$element->set_simpleType('Foo');
|
||||
is $element->first_simpleType(), 'Foo';
|
||||
|
||||
$element->set_simpleType( [ 'Foo', 'Bar' ]);
|
||||
is $element->first_simpleType(), 'Foo';
|
||||
|
||||
is $element->first_complexType(), undef;
|
||||
|
||||
$element->set_complexType('Foo');
|
||||
is $element->first_complexType(), 'Foo';
|
||||
|
||||
$element->set_complexType( [ 'Foo', 'Bar' ]);
|
||||
is $element->first_complexType(), 'Foo';
|
||||
|
||||
$element->set_default('Foo');
|
||||
is $element->serialize('Foobar', undef, { namespace => {} } ), 'serialized Foobar Foo';
|
||||
|
||||
$element->set_name('Bar');
|
||||
is $element->serialize(undef, undef, { namespace => {} } ), 'serialized Bar Foo';
|
||||
|
||||
$element->set_fixed('Foobar');
|
||||
is $element->serialize(undef, undef, { namespace => {} } ), 'serialized Bar Foobar';
|
||||
|
||||
$element->set_abstract('1');
|
||||
is $element->serialize('Bar', undef, { namespace => {} } ), 'serialized Bar Foobar';
|
||||
|
||||
eval { $element->serialize(undef, undef, { namespace => {} } ) };
|
||||
like $@, qr{cannot \s serialize \s abstract}xms;
|
||||
@@ -1,33 +0,0 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use Test::More tests => 11;
|
||||
|
||||
use_ok qw(SOAP::WSDL::XSD::SimpleType);
|
||||
|
||||
my $obj = SOAP::WSDL::XSD::SimpleType->new();
|
||||
|
||||
$obj->set_list({ LocalName => 'foo', Value => 'bar'},
|
||||
{ LocalName => 'itemType', Value => 'xsd:int'} );
|
||||
is $obj->get_flavor(), 'list';
|
||||
is $obj->get_itemType(), 'xsd:int';
|
||||
|
||||
is $obj->serialize('Foo', ['Foo', 'Bar']), '<Foo>Foo Bar</Foo>';
|
||||
|
||||
$obj->set_union({ LocalName => 'foo', Value => 'bar'},
|
||||
{ LocalName => 'memberTypes', Value => 'xsd:int'} );
|
||||
is $obj->get_flavor(), 'union';
|
||||
is $obj->get_base()->[0], 'xsd:int';
|
||||
|
||||
$obj->set_union({ LocalName => 'foo', Value => 'bar'},
|
||||
{ LocalName => 'memberTypes', Value => 'xsd:int xsd:string'} );
|
||||
is $obj->get_flavor(), 'union';
|
||||
is $obj->get_base()->[1], 'xsd:string';
|
||||
|
||||
is $obj->serialize('Foo', 'Foobar'), '<Foo>Foobar</Foo>';
|
||||
|
||||
$obj->set_flavor('enumeration');
|
||||
is $obj->serialize('Foo', 'Foobar'), '<Foo>Foobar</Foo>';
|
||||
|
||||
# TODO die on non-serializable content...
|
||||
$obj->set_flavor('');
|
||||
is $obj->serialize('Foo', 'Foobar'), '';
|
||||
@@ -1,104 +0,0 @@
|
||||
use Test::More tests => 176;
|
||||
use Scalar::Util qw(blessed);
|
||||
|
||||
# use SOAP::WSDL::XSD::Typelib::Builtin::anyType;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::anyURI;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::base64Binary;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::boolean;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::byte;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::date;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::dateTime;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::decimal;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::double;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::duration;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::ENTITY;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::float;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::gDay;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::gMonth;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::gMonthDay;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::gYear;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::gYearMonth;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::hexBinary;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::ID;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::IDREF;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::IDREFS;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::int;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::integer;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::language;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::long;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::Name;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::NCName;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::NMTOKEN;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::NMTOKENS;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::negativeInteger;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::nonPositiveInteger;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::normalizedString;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::NOTATION;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::positiveInteger;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::QName;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::short;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::string;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::time;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::token;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::unsignedByte;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::unsignedLong;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::unsignedShort;
|
||||
|
||||
|
||||
for (
|
||||
qw(
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::anyURI
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::base64Binary
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::boolean
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::byte
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::date
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::dateTime
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::decimal
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::double
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::duration
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::ENTITY
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::float
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::gDay
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::gMonth
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::gMonthDay
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::gYear
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::gYearMonth
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::hexBinary
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::ID
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::IDREF
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::IDREFS
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::int
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::integer
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::language
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::long
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::Name
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::NCName
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::negativeInteger
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::NMTOKEN
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::NMTOKENS
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::nonPositiveInteger
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::normalizedString
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::NOTATION
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::positiveInteger
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::QName
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::short
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::time
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::token
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::unsignedByte
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::unsignedLong
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::unsignedShort
|
||||
) ) {
|
||||
my $obj = $_->new();
|
||||
ok blessed $obj;
|
||||
is $obj->get_value(), undef;
|
||||
$obj = $_->new({});
|
||||
ok blessed $obj;
|
||||
is $obj->get_value(), undef;
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
use Test::More tests => 9;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::ENTITY;
|
||||
my $ENTITY = SOAP::WSDL::XSD::Typelib::Builtin::ENTITY->new();
|
||||
|
||||
is $ENTITY->get_value(), undef;
|
||||
$ENTITY->set_value(127);
|
||||
is "$ENTITY", "127", 'stringification';
|
||||
ok $ENTITY = SOAP::WSDL::XSD::Typelib::Builtin::ENTITY->new({ value => 127 });
|
||||
is "$ENTITY", "127", 'stringification';
|
||||
undef $ENTITY;
|
||||
|
||||
$ENTITY = SOAP::WSDL::XSD::Typelib::Builtin::ENTITY->new({});
|
||||
is $ENTITY->get_value(), undef;
|
||||
ok $ENTITY = SOAP::WSDL::XSD::Typelib::Builtin::ENTITY->new({ value => 127 });
|
||||
is "$ENTITY", "127", 'stringification';
|
||||
is $ENTITY->get_value(), "127", 'stringification';
|
||||
ok $ENTITY->isa('SOAP::WSDL::XSD::Typelib::Builtin::NCName'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::ID;
|
||||
my $ID = SOAP::WSDL::XSD::Typelib::Builtin::ID->new();
|
||||
is $ID->get_value(), undef;
|
||||
$ID = SOAP::WSDL::XSD::Typelib::Builtin::ID->new({});
|
||||
is $ID->get_value(), undef;
|
||||
ok $ID = SOAP::WSDL::XSD::Typelib::Builtin::ID->new({ value => 'Test' });
|
||||
is "$ID", 'Test', 'stringification';
|
||||
|
||||
ok $ID->isa('SOAP::WSDL::XSD::Typelib::Builtin::NCName'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::IDREF;
|
||||
my $IDREF = SOAP::WSDL::XSD::Typelib::Builtin::IDREF->new();
|
||||
is $IDREF->get_value(), undef;
|
||||
$IDREF = SOAP::WSDL::XSD::Typelib::Builtin::IDREF->new({});
|
||||
is $IDREF->get_value(), undef;
|
||||
ok $IDREF = SOAP::WSDL::XSD::Typelib::Builtin::IDREF->new({ value => 127 });
|
||||
is "$IDREF", "127", 'stringification';
|
||||
|
||||
ok $IDREF->isa('SOAP::WSDL::XSD::Typelib::Builtin::NCName'), 'inheritance';
|
||||
@@ -1,16 +0,0 @@
|
||||
use Test::More tests => 8;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::IDREFS;
|
||||
my $IDREFS = SOAP::WSDL::XSD::Typelib::Builtin::IDREFS->new();
|
||||
is $IDREFS->get_value(), undef;
|
||||
$IDREFS = SOAP::WSDL::XSD::Typelib::Builtin::IDREFS->new({});
|
||||
is $IDREFS->get_value(), undef;
|
||||
ok $IDREFS = SOAP::WSDL::XSD::Typelib::Builtin::IDREFS->new({ value => [ 127 , 'Test' ] });
|
||||
is $IDREFS->serialize(), "127 Test", 'stringification';
|
||||
|
||||
ok $IDREFS = SOAP::WSDL::XSD::Typelib::Builtin::IDREFS->new({ value => 'Test' });
|
||||
is "$IDREFS", "Test", 'stringification';
|
||||
|
||||
ok $IDREFS->isa('SOAP::WSDL::XSD::Typelib::Builtin::IDREF'), 'inheritance';
|
||||
ok $IDREFS->isa('SOAP::WSDL::XSD::Typelib::Builtin::list'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::NCName;
|
||||
my $NCName = SOAP::WSDL::XSD::Typelib::Builtin::NCName->new();
|
||||
is $NCName->get_value(), undef;
|
||||
$NCName = SOAP::WSDL::XSD::Typelib::Builtin::NCName->new({});
|
||||
is $NCName->get_value(), undef;
|
||||
ok $NCName = SOAP::WSDL::XSD::Typelib::Builtin::NCName->new({ value => 'Test' });
|
||||
is "$NCName", "Test", 'stringification';
|
||||
|
||||
ok $NCName->isa('SOAP::WSDL::XSD::Typelib::Builtin::Name'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::token;
|
||||
my $token = SOAP::WSDL::XSD::Typelib::Builtin::token->new();
|
||||
is $token->get_value(), undef;
|
||||
$token = SOAP::WSDL::XSD::Typelib::Builtin::token->new({});
|
||||
is $token->get_value(), undef;
|
||||
ok $token = SOAP::WSDL::XSD::Typelib::Builtin::token->new({ value => 127 });
|
||||
is "$token", "127", 'stringification';
|
||||
|
||||
ok $token->isa('SOAP::WSDL::XSD::Typelib::Builtin::normalizedString'), 'inheritance';
|
||||
@@ -1,21 +0,0 @@
|
||||
use Test::More tests => 9;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::NMTOKENS;
|
||||
my $NMTOKENS = SOAP::WSDL::XSD::Typelib::Builtin::NMTOKENS->new();
|
||||
is $NMTOKENS->get_value(), undef;
|
||||
$NMTOKENS = SOAP::WSDL::XSD::Typelib::Builtin::NMTOKENS->new({});
|
||||
is $NMTOKENS->get_value(), undef;
|
||||
ok $NMTOKENS = SOAP::WSDL::XSD::Typelib::Builtin::NMTOKENS->new({ value => [ 127 , 'Test' ] });
|
||||
|
||||
is $NMTOKENS->serialize, '127 Test', 'stringification';
|
||||
|
||||
ok $NMTOKENS = SOAP::WSDL::XSD::Typelib::Builtin::NMTOKENS->new({ value => 'Test' });
|
||||
is "$NMTOKENS", "Test", 'stringification';
|
||||
|
||||
$NMTOKENS = SOAP::WSDL::XSD::Typelib::Builtin::NMTOKENS->new({ value => undef });
|
||||
is $NMTOKENS, undef, 'stringification';
|
||||
|
||||
|
||||
ok $NMTOKENS->isa('SOAP::WSDL::XSD::Typelib::Builtin::NMTOKEN'), 'inheritance';
|
||||
ok $NMTOKENS->isa('SOAP::WSDL::XSD::Typelib::Builtin::list'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::NOTATION;
|
||||
my $NOTATION = SOAP::WSDL::XSD::Typelib::Builtin::NOTATION->new();
|
||||
is $NOTATION->get_value(), undef;
|
||||
$NOTATION = SOAP::WSDL::XSD::Typelib::Builtin::NOTATION->new({});
|
||||
is $NOTATION->get_value(), undef;
|
||||
ok $NOTATION = SOAP::WSDL::XSD::Typelib::Builtin::NOTATION->new({ value => 'Test' });
|
||||
is "$NOTATION", "Test", 'stringification';
|
||||
|
||||
ok $NOTATION->isa('SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::Name;
|
||||
my $Name = SOAP::WSDL::XSD::Typelib::Builtin::Name->new();
|
||||
is $Name->get_value(), undef;
|
||||
$Name = SOAP::WSDL::XSD::Typelib::Builtin::Name->new({});
|
||||
is $Name->get_value(), undef;
|
||||
ok $Name = SOAP::WSDL::XSD::Typelib::Builtin::Name->new({ value => 'xsd:Test' });
|
||||
is "$Name", "xsd:Test", 'stringification';
|
||||
|
||||
ok $Name->isa('SOAP::WSDL::XSD::Typelib::Builtin::normalizedString'), 'inheritance';
|
||||
@@ -1,62 +0,0 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use Test::More tests => 23;
|
||||
use Scalar::Util qw(blessed);
|
||||
use lib '../../../../../../lib';
|
||||
use_ok qw(SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType);
|
||||
|
||||
my $obj = SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType->new();
|
||||
|
||||
my $id = ${ $obj };
|
||||
undef $obj;
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType->new();
|
||||
|
||||
is ${ $obj }, $id;
|
||||
|
||||
ok blessed $obj, 'constructor returned blessed reference';
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType->new({ value => 'test1' });
|
||||
|
||||
ok blessed $obj, 'constructor returned blessed reference';
|
||||
is $obj->get_value(), 'test1', 'get_value';
|
||||
|
||||
is $obj->get_xmlns(), 'http://www.w3.org/2001/XMLSchema', 'get_xmlns';
|
||||
|
||||
|
||||
is $obj->start_tag({ name => 'test' }), '<test >', 'start_tag';
|
||||
is $obj->end_tag({ name => 'test' }), '</test >', 'end_tag';
|
||||
|
||||
ok $obj->set_value('test'), 'set_value';
|
||||
is $obj->get_value(), 'test', 'get_value';
|
||||
|
||||
is "$obj", q{test}, 'stringification overloading';
|
||||
is $obj->serialize, q{test}, 'stringification overloading';
|
||||
|
||||
ok ($obj)
|
||||
? pass 'boolean overloading'
|
||||
: fail 'boolean overloading';
|
||||
|
||||
ok ! $obj->set_value(undef), 'set_value with explicit undef';
|
||||
is $obj->get_value(), undef, 'get_value';
|
||||
|
||||
{
|
||||
no warnings qw(uninitialized);
|
||||
is "$obj", q{}, 'stringification overloading';
|
||||
}
|
||||
is $obj->serialize, q{}, 'stringification overloading';
|
||||
|
||||
ok $obj = SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType->new({
|
||||
value => 'test2',
|
||||
});
|
||||
|
||||
is $obj->get_value(), 'test2', 'get_value on attr value';
|
||||
|
||||
$obj->set_value(undef);
|
||||
|
||||
is $obj->serialize({ name => 'foo' }), '<foo ></foo >'
|
||||
, 'serialize undef value with name';
|
||||
is $obj->serialize(), q{}, 'serialize undef value without name';
|
||||
|
||||
|
||||
ok $obj->isa('SOAP::WSDL::XSD::Typelib::Builtin::anyType'), 'inheritance';
|
||||
@@ -1,32 +0,0 @@
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use Test::More tests => 3;
|
||||
use Scalar::Util qw(blessed);
|
||||
use_ok qw(SOAP::WSDL::XSD::Typelib::Builtin::anyType);
|
||||
|
||||
is SOAP::WSDL::XSD::Typelib::Builtin::anyType->get_xmlns(), 'http://www.w3.org/2001/XMLSchema', 'get_xmlns';
|
||||
is SOAP::WSDL::XSD::Typelib::Builtin::anyType->serialize(), q{}, 'serialize to empty';
|
||||
|
||||
exit 0;
|
||||
|
||||
__END__
|
||||
|
||||
# cannot instantiate abstract type...
|
||||
|
||||
my $obj = SOAP::WSDL::XSD::Typelib::Builtin::anyType->new();
|
||||
|
||||
ok blessed $obj, 'constructor returned blessed reference';
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::anyType->new({
|
||||
xmlns => 'urn:Siemens.mosaic'
|
||||
});
|
||||
|
||||
ok blessed $obj, 'constructor returned blessed reference';
|
||||
|
||||
is $obj->get_xmlns(), 'http://www.w3.org/2001/XMLSchema', 'get_xmlns';
|
||||
|
||||
is $obj->start_tag({ name => 'test' }), '<test >', 'start_tag';
|
||||
is $obj->end_tag({ name => 'test' }), '</test >', 'end_tag';
|
||||
|
||||
is "$obj", q{}, 'serialize overloading';
|
||||
@@ -1,14 +0,0 @@
|
||||
use Test::More tests => 7;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::anyURI;
|
||||
my $anyURI = SOAP::WSDL::XSD::Typelib::Builtin::anyURI->new();
|
||||
is $anyURI->get_value(), undef;
|
||||
$anyURI = SOAP::WSDL::XSD::Typelib::Builtin::anyURI->new({});
|
||||
is $anyURI->get_value(), undef;
|
||||
ok $anyURI = SOAP::WSDL::XSD::Typelib::Builtin::anyURI->new({ value => 'isbn:1234567' });
|
||||
is "$anyURI", "isbn:1234567", 'stringification';
|
||||
ok $anyURI->set_value('http://example.org');
|
||||
is "$anyURI", 'http://example.org', 'stringification';
|
||||
$anyURI = SOAP::WSDL::XSD::Typelib::Builtin::anyURI->new();
|
||||
ok $anyURI->isa('SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType'), 'inheritance';
|
||||
@@ -1,15 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::base64Binary;
|
||||
my $obj = SOAP::WSDL::XSD::Typelib::Builtin::base64Binary->new();
|
||||
{
|
||||
no warnings qw(uninitialized);
|
||||
is "$obj", '', 'stringification';
|
||||
}
|
||||
ok defined $obj;
|
||||
ok $obj->set_value('AAAA==');
|
||||
ok $obj = SOAP::WSDL::XSD::Typelib::Builtin::base64Binary->new({ value => 'AAAA==' });
|
||||
is "$obj", 'AAAA==', 'stringification';
|
||||
|
||||
ok $obj->isa('SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType'), 'inheritance';
|
||||
@@ -1,68 +0,0 @@
|
||||
use Test::More tests => 29;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::boolean;
|
||||
|
||||
my $bool;
|
||||
$bool = SOAP::WSDL::XSD::Typelib::Builtin::boolean->new();
|
||||
ok defined $bool;
|
||||
|
||||
is "$bool", '', 'serialized undef to empty string';
|
||||
|
||||
$bool = SOAP::WSDL::XSD::Typelib::Builtin::boolean->new({});
|
||||
ok defined $bool;
|
||||
|
||||
ok $bool = SOAP::WSDL::XSD::Typelib::Builtin::boolean->new({ value => 'true' });
|
||||
|
||||
is $bool * 1 , 1, 'numerification';
|
||||
ok $bool, 'boolification';
|
||||
|
||||
is $bool->serialize(), 'true', 'serialization';
|
||||
|
||||
$bool->set_value('1');
|
||||
is $bool->serialize(), 'true';
|
||||
is "$bool", 1, 'stringification';
|
||||
$bool ? pass 'boolification' : fail 'boolification';
|
||||
|
||||
$bool->set_value('0');
|
||||
is $bool->serialize(), 'false';
|
||||
! $bool ? pass 'boolification' : fail 'boolification';
|
||||
|
||||
$bool->set_value(undef);
|
||||
is $bool->serialize(), 'false';
|
||||
! $bool ? pass 'boolification' : fail 'boolification';
|
||||
|
||||
|
||||
$bool->set_value('false');
|
||||
|
||||
if ($bool) {
|
||||
fail 'boolification';
|
||||
}
|
||||
else {
|
||||
pass 'boolification';
|
||||
}
|
||||
|
||||
is "$bool", '0', 'stringification';
|
||||
|
||||
ok $bool->isa('SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType'), 'inheritance';
|
||||
|
||||
is $bool->serialize({ name => 'test'}), '<test >false</test >';
|
||||
is $bool->serialize(), 'false';
|
||||
|
||||
$bool->delete_value();
|
||||
is $bool->serialize, '', 'serialized undef to empty string';
|
||||
is "$bool", '', 'stringified undef to empty string';
|
||||
$bool->set_value('');
|
||||
|
||||
is $bool->serialize, 'false', 'serialized empty string to false';
|
||||
is "$bool", 0, 'stringified empty string to 0';
|
||||
|
||||
$SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType::___value->{ ${ $bool } } = 'true';
|
||||
is $bool->serialize(), 'true', 'serialization';
|
||||
is "$bool", 1, 'stringification';
|
||||
is 3 * $bool, 3, 'numerification';
|
||||
|
||||
$SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType::___value->{ ${ $bool } } = 'false';
|
||||
is $bool->serialize(), 'false', 'serialization';
|
||||
is "$bool", 0, 'numerification';
|
||||
is 3 * $bool, 0, 'stringification';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::byte;
|
||||
my $byte = SOAP::WSDL::XSD::Typelib::Builtin::byte->new();
|
||||
ok defined $byte;
|
||||
ok $byte->set_value('127');
|
||||
ok $byte = SOAP::WSDL::XSD::Typelib::Builtin::byte->new({ value => 127 });
|
||||
is $byte * 1, 127, 'numerification';
|
||||
is "$byte", "127", 'stringification';
|
||||
|
||||
ok $byte->isa('SOAP::WSDL::XSD::Typelib::Builtin::short'), 'inheritance';
|
||||
@@ -1,81 +0,0 @@
|
||||
use Test::More tests => 30;
|
||||
use strict;
|
||||
use warnings;
|
||||
#use Carp qw(cluck);
|
||||
#
|
||||
#$SIG{__WARN__} = sub { cluck @_ };
|
||||
#use warnings;
|
||||
use lib '../lib';
|
||||
use Date::Format;
|
||||
use Date::Parse;
|
||||
use_ok('SOAP::WSDL::XSD::Typelib::Builtin::date');
|
||||
my $obj;
|
||||
|
||||
sub timezone {
|
||||
my @time = map { defined $_ ? $_ : 0 } strptime shift;
|
||||
my $tz = strftime('%z', @time);
|
||||
substr $tz, -2, 0, ':';
|
||||
return $tz;
|
||||
}
|
||||
|
||||
my %dates = (
|
||||
'2007/12/31' => '2007-12-31',
|
||||
'2007:08:31' => '2007-08-31',
|
||||
'30 Aug 2007' => '2007-08-30',
|
||||
);
|
||||
|
||||
my %localized_date_of = (
|
||||
'2007-12-31T00:00:00.0000000+0000' => '2007-12-31+00:00',
|
||||
'2007-12-31T00:00:00.0000000+0130' => '2007-12-31+01:30',
|
||||
'2007-12-31T00:00:00.0000000+0200' => '2007-12-31+02:00',
|
||||
'2007-12-31T00:00:00.0000000+0300' => '2007-12-31+03:00',
|
||||
'2007-12-31T00:00:00.0000000+0400' => '2007-12-31+04:00',
|
||||
'2007-12-31T00:00:00.0000000+0500' => '2007-12-31+05:00',
|
||||
'2007-12-31T00:00:00.0000000+0600' => '2007-12-31+06:00',
|
||||
'2007-12-31T00:00:00.0000000+0700' => '2007-12-31+07:00',
|
||||
'2007-12-31T00:00:00.0000000+0800' => '2007-12-31+08:00',
|
||||
'2007-12-31T00:00:00.0000000+0900' => '2007-12-31+09:00',
|
||||
'2007-12-31T00:00:00.0000000+1000' => '2007-12-31+10:00',
|
||||
'2007-12-31T00:00:00.0000000+1100' => '2007-12-31+11:00',
|
||||
'2007-12-31T00:00:00.0000000+1200' => '2007-12-31+12:00',
|
||||
'2007-12-31T00:00:00.0000000-0100' => '2007-12-31-01:00',
|
||||
'2007-12-31T00:00:00.0000000-0200' => '2007-12-31-02:00',
|
||||
'2007-12-31T00:00:00.0000000-0300' => '2007-12-31-03:00',
|
||||
'2007-12-31T00:00:00.0000000-0400' => '2007-12-31-04:00',
|
||||
'2007-12-31T00:00:00.0000000-0500' => '2007-12-31-05:00',
|
||||
'2007-12-31T00:00:00.0000000-0600' => '2007-12-31-06:00',
|
||||
'2007-12-31T00:00:00.0000000-0700' => '2007-12-31-07:00',
|
||||
'2007-12-31T00:00:00.0000000-0800' => '2007-12-31-08:00',
|
||||
'2007-12-31T00:00:00.0000000-0900' => '2007-12-31-09:00',
|
||||
'2007-12-31T00:00:00.0000000-1000' => '2007-12-31-10:00',
|
||||
'2007-12-31T00:00:00.0000000-1100' => '2007-12-31-11:00',
|
||||
'2007-12-31T00:00:00.0000000-1200' => '2007-12-31-12:00',
|
||||
|
||||
|
||||
);
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::date->new();
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::date->new({});
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::date->new({
|
||||
value => '2007-12-31'
|
||||
});
|
||||
|
||||
while (my ($date, $converted) = each %localized_date_of ) {
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::date->new();
|
||||
$obj->set_value( $date );
|
||||
|
||||
is $obj->get_value() , $converted , 'conversion';
|
||||
}
|
||||
|
||||
while (my ($date, $converted) = each %dates ) {
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::date->new();
|
||||
$obj->set_value( $date );
|
||||
|
||||
is $obj->get_value() , $converted . timezone($date), 'conversion';
|
||||
}
|
||||
|
||||
$obj->set_value( '2037-12-31+12:00' );
|
||||
is $obj->get_value() , '2037-12-31+12:00', 'no conversion on match';
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib '../lib';
|
||||
use Test::More tests => 7;
|
||||
use Date::Parse;
|
||||
use Date::Format;
|
||||
|
||||
sub timezone {
|
||||
my @time = strptime shift;
|
||||
my $tz = strftime('%z', @time);
|
||||
substr $tz, -2, 0, ':';
|
||||
return $tz;
|
||||
}
|
||||
|
||||
use_ok('SOAP::WSDL::XSD::Typelib::Builtin::dateTime');
|
||||
|
||||
print "# timezone is " . timezone( scalar localtime(time) ) . "\n";
|
||||
my $obj;
|
||||
my %dates = (
|
||||
'2007-12-31 12:32' => '2007-12-31T12:32:00',
|
||||
'2007-08-31 00:32' => '2007-08-31T00:32:00',
|
||||
'30 Aug 2007' => '2007-08-30T00:00:00',
|
||||
);
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::dateTime->new();
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::dateTime->new({});
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::dateTime->new({ value => '2007-08-31T00:32:00' });
|
||||
|
||||
while (my ($date, $converted) = each %dates ) {
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::dateTime->new();
|
||||
$obj->set_value( $date );
|
||||
|
||||
is $obj->get_value() , $converted . timezone($date), 'conversion with timezone';
|
||||
}
|
||||
$obj->set_value('2007-12-31T00:00:00.0000000+01:00');
|
||||
is $obj->get_value(), '2007-12-31T00:00:00.0000000+01:00';
|
||||
|
||||
$obj->set_value(undef);
|
||||
is $obj->get_value(), undef;
|
||||
eval { $obj->set_value(1) };
|
||||
ok $@, 'Die on illegal datetime';
|
||||
@@ -1,15 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use Scalar::Util qw(blessed);
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::decimal;
|
||||
my $decimal = SOAP::WSDL::XSD::Typelib::Builtin::decimal->new();
|
||||
ok blessed $decimal;
|
||||
is $decimal->get_value(), undef;
|
||||
ok $decimal = SOAP::WSDL::XSD::Typelib::Builtin::decimal->new({ value => 127 });
|
||||
is $decimal * 1, 127, 'numerification';
|
||||
is "$decimal", "127", 'stringification';
|
||||
|
||||
ok $decimal->isa('SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType'), 'inheritance';
|
||||
|
||||
# TODO: test range (bigint)
|
||||
@@ -1,13 +0,0 @@
|
||||
use Test::More tests => 4;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::double;
|
||||
my $double = SOAP::WSDL::XSD::Typelib::Builtin::double->new();
|
||||
|
||||
ok $double = SOAP::WSDL::XSD::Typelib::Builtin::double->new({ value => 127.23 });
|
||||
is $double * 1, 127.23, 'numerification';
|
||||
is "$double", "127.23", 'stringification';
|
||||
|
||||
ok $double->isa('SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType'), 'inheritance';
|
||||
|
||||
# TODO test range
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 4;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::float;
|
||||
my $float = SOAP::WSDL::XSD::Typelib::Builtin::float->new();
|
||||
ok $float = SOAP::WSDL::XSD::Typelib::Builtin::float->new({ value => 127.23 });
|
||||
is $float * 1, 127.23, 'numerification';
|
||||
is "$float", "127.23", 'stringification';
|
||||
|
||||
ok $float->isa('SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType'), 'inheritance';
|
||||
|
||||
# TODO test range
|
||||
@@ -1,11 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::hexBinary;
|
||||
my $hexBinary = SOAP::WSDL::XSD::Typelib::Builtin::hexBinary->new();
|
||||
is $hexBinary->get_value(), undef;
|
||||
$hexBinary = SOAP::WSDL::XSD::Typelib::Builtin::hexBinary->new({});
|
||||
is $hexBinary->get_value(), undef;
|
||||
ok $hexBinary = SOAP::WSDL::XSD::Typelib::Builtin::hexBinary->new({ value => 'a1b2c3d4' });
|
||||
is "$hexBinary", "a1b2c3d4", 'stringification';
|
||||
ok $hexBinary->isa('SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::int;
|
||||
my $int = SOAP::WSDL::XSD::Typelib::Builtin::int->new();
|
||||
ok defined $int;
|
||||
ok $int->set_value('127');
|
||||
ok $int = SOAP::WSDL::XSD::Typelib::Builtin::int->new({ value => 127 });
|
||||
is $int * 1, 127, 'numerification';
|
||||
is "$int", "127", 'stringification';
|
||||
|
||||
ok $int->isa('SOAP::WSDL::XSD::Typelib::Builtin::long'), 'inheritance';
|
||||
@@ -1,13 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::integer;
|
||||
my $integer = SOAP::WSDL::XSD::Typelib::Builtin::integer->new();
|
||||
is $integer->get_value(), undef;
|
||||
$integer = SOAP::WSDL::XSD::Typelib::Builtin::integer->new({});
|
||||
is $integer->get_value(), undef;
|
||||
ok $integer = SOAP::WSDL::XSD::Typelib::Builtin::integer->new({ value => 127 });
|
||||
is $integer * 1, 127, 'numerification';
|
||||
is "$integer", "127", 'stringification';
|
||||
|
||||
ok $integer->isa('SOAP::WSDL::XSD::Typelib::Builtin::decimal'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::language;
|
||||
my $Name = SOAP::WSDL::XSD::Typelib::Builtin::language->new();
|
||||
is $Name->get_value(), undef;
|
||||
$Name = SOAP::WSDL::XSD::Typelib::Builtin::language->new({});
|
||||
is $Name->get_value(), undef;
|
||||
ok $Name = SOAP::WSDL::XSD::Typelib::Builtin::language->new({ value => 'DE' });
|
||||
is "$Name", "DE", 'stringification';
|
||||
|
||||
ok $Name->isa('SOAP::WSDL::XSD::Typelib::Builtin::token'), 'inheritance';
|
||||
@@ -1,28 +0,0 @@
|
||||
package ListTest;
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::Builtin::list
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string);
|
||||
|
||||
package main;
|
||||
use Test::More tests => 11;
|
||||
use strict;
|
||||
use warnings;
|
||||
my $obj = ListTest->new();
|
||||
is $obj->get_value(), undef;
|
||||
$obj = ListTest->new({});
|
||||
is $obj->get_value(), undef;
|
||||
ok $obj = ListTest->new({ value => 'Test' });
|
||||
is "$obj", 'Test', 'stringification';
|
||||
|
||||
ok $obj->isa('SOAP::WSDL::XSD::Typelib::Builtin::string'), 'inheritance';
|
||||
|
||||
$obj->set_value(undef);
|
||||
is $obj->get_value, undef;
|
||||
is $obj->serialize(), '', 'serialize undef to empty string';
|
||||
is $obj->serialize({ empty => 1 }), '', 'serialize undef to empty string';
|
||||
|
||||
$obj->set_value(42);
|
||||
is $obj->get_value, 42;
|
||||
is $obj->serialize(), '42', 'serialize undef to empty string';
|
||||
|
||||
$obj->set_value([1,2,3]);
|
||||
is $obj->serialize(), '1 2 3', 'list serialization';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::long;
|
||||
my $long = SOAP::WSDL::XSD::Typelib::Builtin::long->new();
|
||||
ok defined $long;
|
||||
ok $long->set_value('127');
|
||||
ok $long = SOAP::WSDL::XSD::Typelib::Builtin::long->new({ value => 127 });
|
||||
is $long * 1, 127, 'numerification';
|
||||
is "$long", "127", 'stringification';
|
||||
|
||||
ok $long->isa('SOAP::WSDL::XSD::Typelib::Builtin::decimal'), 'inheritance';
|
||||
@@ -1,10 +0,0 @@
|
||||
use Test::More tests => 4;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::negativeInteger;
|
||||
my $negativeInteger = SOAP::WSDL::XSD::Typelib::Builtin::negativeInteger->new();
|
||||
ok $negativeInteger = SOAP::WSDL::XSD::Typelib::Builtin::negativeInteger->new({ value => 127 });
|
||||
is $negativeInteger * 1, 127, 'numerification';
|
||||
is "$negativeInteger", "127", 'stringification';
|
||||
|
||||
ok $negativeInteger->isa('SOAP::WSDL::XSD::Typelib::Builtin::nonPositiveInteger'), 'inheritance';
|
||||
@@ -1,10 +0,0 @@
|
||||
use Test::More tests => 4;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger;
|
||||
my $nonNegativeInteger = SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger->new();
|
||||
ok $nonNegativeInteger = SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger->new({ value => 127 });
|
||||
is $nonNegativeInteger * 1, 127, 'numerification';
|
||||
is "$nonNegativeInteger", "127", 'stringification';
|
||||
|
||||
ok $nonNegativeInteger->isa('SOAP::WSDL::XSD::Typelib::Builtin::integer'), 'inheritance';
|
||||
@@ -1,10 +0,0 @@
|
||||
use Test::More tests => 4;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::nonPositiveInteger;
|
||||
my $nonPositiveInteger = SOAP::WSDL::XSD::Typelib::Builtin::nonPositiveInteger->new();
|
||||
ok $nonPositiveInteger = SOAP::WSDL::XSD::Typelib::Builtin::nonPositiveInteger->new({ value => 127 });
|
||||
is $nonPositiveInteger * 1, 127, 'numerification';
|
||||
is "$nonPositiveInteger", "127", 'stringification';
|
||||
|
||||
ok $nonPositiveInteger->isa('SOAP::WSDL::XSD::Typelib::Builtin::integer'), 'inheritance';
|
||||
@@ -1,24 +0,0 @@
|
||||
use Test::More tests => 9;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::normalizedString;
|
||||
my $obj = SOAP::WSDL::XSD::Typelib::Builtin::normalizedString->new();
|
||||
is $obj->get_value(), undef;
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::normalizedString->new({});
|
||||
is $obj->get_value(), undef;
|
||||
ok $obj = SOAP::WSDL::XSD::Typelib::Builtin::normalizedString->new({ value => 'Test' });
|
||||
is "$obj", 'Test', 'stringification';
|
||||
|
||||
ok $obj->isa('SOAP::WSDL::XSD::Typelib::Builtin::string'), 'inheritance';
|
||||
|
||||
$obj->set_value(undef);
|
||||
is $obj->get_value, undef;
|
||||
$obj->set_value( "&\t\"Aber\"\n\r<test>");
|
||||
is $obj->get_value() , '& "Aber" <test>';
|
||||
|
||||
is $obj->serialize, '& "Aber" <test>'
|
||||
, 'escape text on serialization';
|
||||
|
||||
is $obj->serialize({ name => 'test'})
|
||||
, '<test >& "Aber" <test></test >'
|
||||
, 'Serialization with name';
|
||||
@@ -1,10 +0,0 @@
|
||||
use Test::More tests => 4;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::positiveInteger;
|
||||
my $positiveInteger = SOAP::WSDL::XSD::Typelib::Builtin::positiveInteger->new();
|
||||
ok $positiveInteger = SOAP::WSDL::XSD::Typelib::Builtin::positiveInteger->new({ value => 127 });
|
||||
is $positiveInteger * 1, 127, 'numerification';
|
||||
is "$positiveInteger", "127", 'stringification';
|
||||
|
||||
ok $positiveInteger->isa('SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::short;
|
||||
my $short = SOAP::WSDL::XSD::Typelib::Builtin::short->new();
|
||||
ok defined $short;
|
||||
ok $short->set_value('127');
|
||||
ok $short = SOAP::WSDL::XSD::Typelib::Builtin::short->new({ value => 127 });
|
||||
is $short * 1, 127, 'numerification';
|
||||
is "$short", "127", 'stringification';
|
||||
|
||||
ok $short->isa('SOAP::WSDL::XSD::Typelib::Builtin::int'), 'inheritance';
|
||||
@@ -1,23 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib '../lib';
|
||||
|
||||
use_ok('SOAP::WSDL::XSD::Typelib::Builtin::string');
|
||||
my $obj;
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::string->new({ value => '& "Aber" <test>'});
|
||||
|
||||
is $obj->serialize, '& "Aber" <test>'
|
||||
, 'escape text on serialization';
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::string->new();
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::string->new({});
|
||||
$obj->set_value( '& "Aber" <test>');
|
||||
is $obj->get_value() , '& "Aber" <test>';
|
||||
is $obj, '& "Aber" <test>';
|
||||
is $obj->serialize(), '& "Aber" <test>'
|
||||
, 'escape text on serialization';
|
||||
|
||||
is $obj->serialize({ name => 'test'})
|
||||
, '<test >& "Aber" <test></test >'
|
||||
, 'Serialization with name';
|
||||
@@ -1,39 +0,0 @@
|
||||
use Test::More tests => 3;
|
||||
use strict;
|
||||
use warnings;
|
||||
use lib '../lib';
|
||||
use Date::Parse;
|
||||
use Date::Format;
|
||||
|
||||
sub timezone {
|
||||
my @time = localtime;
|
||||
my $tz = strftime('%z', @time);
|
||||
substr $tz, -2, 0, ':';
|
||||
return $tz;
|
||||
}
|
||||
|
||||
my $timezone = timezone;
|
||||
|
||||
use_ok('SOAP::WSDL::XSD::Typelib::Builtin::time');
|
||||
my $obj;
|
||||
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::time->new({value => '12:23:33'});
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::time->new({});
|
||||
$obj = SOAP::WSDL::XSD::Typelib::Builtin::time->new();
|
||||
|
||||
|
||||
$obj->set_value( '12:23:03' );
|
||||
is $obj->get_value() , "12:23:03$timezone", 'conversion';
|
||||
|
||||
$obj->set_value( '12:23:03.12345+01:00' ), ;
|
||||
is $obj->get_value() , '12:23:03.12345+01:00', 'no conversion';
|
||||
|
||||
|
||||
|
||||
# exit;
|
||||
|
||||
#~ use Benchmark;
|
||||
#~ timethese 10000, {
|
||||
#~ xml => sub { $obj->set_value('2037-12-31T00:00:00.0000000+01:00') },
|
||||
#~ string => sub { $obj->set_value('2037-12-31') },
|
||||
#~ }
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 5;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::NMTOKEN;
|
||||
my $NMTOKEN = SOAP::WSDL::XSD::Typelib::Builtin::NMTOKEN->new();
|
||||
is $NMTOKEN->get_value(), undef;
|
||||
$NMTOKEN = SOAP::WSDL::XSD::Typelib::Builtin::NMTOKEN->new({});
|
||||
is $NMTOKEN->get_value(), undef;
|
||||
ok $NMTOKEN = SOAP::WSDL::XSD::Typelib::Builtin::NMTOKEN->new({ value => 127 });
|
||||
is "$NMTOKEN", "127", 'stringification';
|
||||
|
||||
ok $NMTOKEN->isa('SOAP::WSDL::XSD::Typelib::Builtin::token'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::unsignedByte;
|
||||
my $unsignedByte = SOAP::WSDL::XSD::Typelib::Builtin::unsignedByte->new();
|
||||
ok defined $unsignedByte;
|
||||
ok $unsignedByte->set_value('127');
|
||||
ok $unsignedByte = SOAP::WSDL::XSD::Typelib::Builtin::unsignedByte->new({ value => 127 });
|
||||
is $unsignedByte * 1, 127, 'numerification';
|
||||
is "$unsignedByte", "127", 'stringification';
|
||||
|
||||
ok $unsignedByte->isa('SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt;
|
||||
my $unsignedInt = SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt->new();
|
||||
ok defined $unsignedInt;
|
||||
ok $unsignedInt->set_value('127');
|
||||
ok $unsignedInt = SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt->new({ value => 127 });
|
||||
is $unsignedInt * 1, 127, 'numerification';
|
||||
is "$unsignedInt", "127", 'stringification';
|
||||
|
||||
ok $unsignedInt->isa('SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::unsignedLong;
|
||||
my $unsignedLong = SOAP::WSDL::XSD::Typelib::Builtin::unsignedLong->new();
|
||||
ok defined $unsignedLong;
|
||||
ok $unsignedLong->set_value('127');
|
||||
ok $unsignedLong = SOAP::WSDL::XSD::Typelib::Builtin::unsignedLong->new({ value => 127 });
|
||||
is $unsignedLong * 1, 127, 'numerification';
|
||||
is "$unsignedLong", "127", 'stringification';
|
||||
|
||||
ok $unsignedLong->isa('SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger'), 'inheritance';
|
||||
@@ -1,12 +0,0 @@
|
||||
use Test::More tests => 6;
|
||||
use strict;
|
||||
use warnings;
|
||||
use SOAP::WSDL::XSD::Typelib::Builtin::unsignedShort;
|
||||
my $unsignedShort = SOAP::WSDL::XSD::Typelib::Builtin::unsignedShort->new();
|
||||
ok defined $unsignedShort;
|
||||
ok $unsignedShort->set_value('127');
|
||||
ok $unsignedShort = SOAP::WSDL::XSD::Typelib::Builtin::unsignedShort->new({ value => 127 });
|
||||
is $unsignedShort * 1, 127, 'numerification';
|
||||
is "$unsignedShort", "127", 'stringification';
|
||||
|
||||
ok $unsignedShort->isa('SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger'), 'inheritance';
|
||||
@@ -1,273 +0,0 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
package MyEmptyType;
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
__PACKAGE__->_factory([],{},{});
|
||||
|
||||
package MyEmptyType2;
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
__PACKAGE__->_factory();
|
||||
|
||||
package MyType;
|
||||
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
my %test_of :ATTR(:get<test>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ 'test' ],
|
||||
{
|
||||
test => \%test_of,
|
||||
},
|
||||
{
|
||||
test => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
|
||||
}
|
||||
);
|
||||
|
||||
package MyType2;
|
||||
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
my %test2_of :ATTR(:get<test>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ 'test' ],
|
||||
{
|
||||
test => \%test2_of,
|
||||
},
|
||||
{
|
||||
test => 'MyType',
|
||||
}
|
||||
);
|
||||
|
||||
package main;
|
||||
use Test::More tests => 100;
|
||||
use Storable;
|
||||
|
||||
my $have_warn = eval { require Test::Warn; import Test::Warn; 1; };
|
||||
|
||||
my $obj;
|
||||
|
||||
$obj = MyEmptyType->new();
|
||||
is $obj->serialize, '';
|
||||
is $obj->serialize({ name => 'test'}), '<test />';
|
||||
|
||||
$obj = MyEmptyType2->new();
|
||||
is $obj->serialize, '';
|
||||
is $obj->serialize({ name => 'test'}), '<test />';
|
||||
|
||||
|
||||
$obj = MyType->new({});
|
||||
isa_ok $obj, 'MyType';
|
||||
is $obj->get_test, undef, 'undefined element content';
|
||||
|
||||
my $hash_of_ref = $obj->as_hash_ref();
|
||||
is scalar keys %{ $hash_of_ref }, 0;
|
||||
|
||||
SKIP: {
|
||||
skip 'Cannot test warnings without Test::Warn', 1 if not $have_warn;
|
||||
warning_is( sub { $obj->add_test() }, 'attempting to add empty value to MyType' );
|
||||
}
|
||||
|
||||
$obj = MyType->new({ test => 'Test1'});
|
||||
isa_ok $obj, 'MyType';
|
||||
isa_ok $obj->get_test, 'SOAP::WSDL::XSD::Typelib::Builtin::string';
|
||||
is $obj->get_test, 'Test1', 'element content';
|
||||
|
||||
$obj = MyType->new({
|
||||
test => SOAP::WSDL::XSD::Typelib::Builtin::string->new({
|
||||
value => 'Test2'
|
||||
})
|
||||
});
|
||||
isa_ok $obj, 'MyType';
|
||||
isa_ok $obj->get_test, 'SOAP::WSDL::XSD::Typelib::Builtin::string';
|
||||
is $obj->get_test, 'Test2', 'element content';
|
||||
|
||||
$obj = MyType->new({
|
||||
test => { value => 'Test2' } # just a trick - pass it unaltered to new...
|
||||
});
|
||||
isa_ok $obj, 'MyType';
|
||||
isa_ok $obj->get_test, 'SOAP::WSDL::XSD::Typelib::Builtin::string';
|
||||
is $obj->get_test, 'Test2', 'element content';
|
||||
|
||||
$hash_of_ref = $obj->as_hash_ref();
|
||||
is $hash_of_ref->{ test }, 'Test2';
|
||||
|
||||
$obj = MyType->new({
|
||||
test => [
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({
|
||||
value => 'Test'
|
||||
}),
|
||||
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({
|
||||
value => 'Test2'
|
||||
})
|
||||
],
|
||||
});
|
||||
isa_ok $obj, 'MyType';
|
||||
isa_ok $obj->get_test, 'ARRAY';
|
||||
is $obj->get_test()->[0], 'Test', 'element content (list content [0])';
|
||||
is $obj->get_test()->[1], 'Test2', 'element content (list content [1])';
|
||||
|
||||
$hash_of_ref = $obj->as_hash_ref();
|
||||
is $hash_of_ref->{ test }->[0], 'Test';
|
||||
is $hash_of_ref->{ test }->[1], 'Test2';
|
||||
|
||||
my $nested = MyType2->new({
|
||||
test => $obj,
|
||||
});
|
||||
|
||||
is $nested->get_test, $obj, 'getter';
|
||||
$nested = MyType2->new({
|
||||
test => [$obj, $obj],
|
||||
});
|
||||
|
||||
is $nested->get_test->[0], $obj;
|
||||
|
||||
$nested = MyType2->new({
|
||||
test => {
|
||||
test => [
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({
|
||||
value => 'Test'
|
||||
}),
|
||||
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({
|
||||
value => 'Test2'
|
||||
})
|
||||
],
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
$hash_of_ref = $nested->as_hash_ref();
|
||||
is $hash_of_ref->{ test }->{ test }->[1], 'Test2';
|
||||
|
||||
|
||||
# isnt $nested->get_test->[0], $obj, 'element identity';
|
||||
|
||||
$obj = MyType->new();
|
||||
isa_ok $obj, 'MyType';
|
||||
is $obj->get_test, undef, 'undefined element content';
|
||||
|
||||
$obj->add_test(
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({ value => 'TestString0'})
|
||||
);
|
||||
is $obj->get_test, 'TestString0', 'added element content';
|
||||
|
||||
for my $count (1..5) {
|
||||
$obj->add_test(
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({ value => "TestString$count" })
|
||||
);
|
||||
|
||||
is ref $obj->get_test(), 'ARRAY', 'element content structure';
|
||||
is @{ $obj->get_test() }, $count+1, "element list length: " . ($count + 1);
|
||||
|
||||
for my $index (0..$count-1) {
|
||||
is $obj->get_test->[$index], "TestString$index", "element content [$index]";
|
||||
}
|
||||
}
|
||||
|
||||
# TODO - remove after *{ "$class\::$name"" } methods are gone
|
||||
|
||||
$obj = MyType->new();
|
||||
|
||||
isa_ok $obj, 'MyType';
|
||||
is $obj->get_test, undef;
|
||||
|
||||
{
|
||||
no warnings;
|
||||
my $foo;
|
||||
eval { $foo = @{ $obj->get_test() } };
|
||||
if (! $@) {
|
||||
is $foo, undef;
|
||||
# like $warnings, qr{ uninitialized \s value \s in array \s dereference }x, 'undef warning';
|
||||
}
|
||||
else {
|
||||
like $@ , qr{Can't \s use \s an \s undefined}x, 'get_ELEMENT still undef on ARRAYIFY';
|
||||
# pass 'failed array dereference';
|
||||
}
|
||||
|
||||
$obj->test(
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({ value => 'TestString0'})
|
||||
);
|
||||
}
|
||||
is $obj->get_test, 'TestString0';
|
||||
eval { is @{ $obj->get_test() }, 1, 'ARRAYIFY get_ELEMENT' };
|
||||
fail 'cannot ARRAYIFY get_ELEMENT' if ($@);
|
||||
|
||||
my @serialized = (
|
||||
'<test >TestString0</test ><test >TestString1</test >',
|
||||
'<test >TestString0</test ><test >TestString1</test ><test >TestString2</test >',
|
||||
'<test >TestString0</test ><test >TestString1</test ><test >TestString2</test ><test >TestString3</test >',
|
||||
'<test >TestString0</test ><test >TestString1</test ><test >TestString2</test ><test >TestString3</test ><test >TestString4</test >',
|
||||
'<test >TestString0</test ><test >TestString1</test ><test >TestString2</test ><test >TestString3</test ><test >TestString4</test ><test >TestString5</test >',
|
||||
);
|
||||
|
||||
for my $count (1..5) {
|
||||
$obj->test(
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({ value => "TestString$count" })
|
||||
);
|
||||
|
||||
is ref $obj->get_test(), 'ARRAY';
|
||||
is @{ $obj->get_test() }, $count+1;
|
||||
|
||||
for my $index (0..$count-1) {
|
||||
is $obj->get_test->[$index], "TestString$index";
|
||||
}
|
||||
is $obj->serialize(), $serialized[$count -1];
|
||||
|
||||
}
|
||||
|
||||
|
||||
eval {
|
||||
$obj = MyType->new({
|
||||
test => [
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string->new({
|
||||
value => 'Test'
|
||||
}),
|
||||
|
||||
\&CORE::die,
|
||||
],
|
||||
});
|
||||
};
|
||||
like $@, qr{cannot \s use \s CODE}xms;
|
||||
|
||||
eval {
|
||||
$obj = MyType->new({
|
||||
test => \&CORE::die,
|
||||
});
|
||||
};
|
||||
like $@, qr{cannot \s use \s CODE}xms;
|
||||
|
||||
|
||||
eval {
|
||||
$obj = MyType->new({
|
||||
foobar => 'fubar'
|
||||
});
|
||||
};
|
||||
like $@, qr{unknown \s field \s foobar \s in \s MyType }xms;
|
||||
|
||||
|
||||
eval { $obj->set_FOO(42) };
|
||||
like $@, qr{Can't \s locate \s object \s method}x;
|
||||
|
||||
eval { MyType->set_FOO(42) };
|
||||
like $@, qr{Can't \s locate \s object \s method}x;
|
||||
|
||||
eval { MyType->new({ FOO => 42 }) };
|
||||
like $@, qr{unknown \s field \s}xm;
|
||||
|
||||
my $clone = Storable::thaw( Storable::freeze( $obj ));
|
||||
is $clone->get_test()->[0], 'TestString0';
|
||||
|
||||
eval { SOAP::WSDL::XSD::Typelib::ComplexType::AUTOMETHOD() };
|
||||
like $@, qr{Cannot \s call}xm;
|
||||
|
||||
|
||||
eval { SOAP::WSDL::XSD::Typelib::ComplexType->_factory([], { test => {} }, {}) };
|
||||
like $@, qr{ No \s class \s given \s for \s }xms;
|
||||
|
||||
eval { SOAP::WSDL::XSD::Typelib::ComplexType->_factory([], { test => {} }, { test => 'HopeItDoesntExistOnYourSystem'}) };
|
||||
like $@, qr{ Can't \s locate \s HopeItDoesntExistOnYourSystem.pm }xms;
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
package MyElement;
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string
|
||||
);
|
||||
|
||||
__PACKAGE__->__set_name('MyElement');
|
||||
__PACKAGE__->__set_nillable(1);
|
||||
|
||||
package main;
|
||||
use Test::More tests => 11;
|
||||
|
||||
my $obj;
|
||||
|
||||
# All constructor variants
|
||||
$obj = MyElement->new();
|
||||
$obj = MyElement->new({});
|
||||
$obj = MyElement->new({ value => 'Test' });
|
||||
|
||||
is( MyElement->__get_nillable(), 1);
|
||||
is $obj->__get_nillable, 1;
|
||||
isa_ok $obj, 'MyElement';
|
||||
is $obj->get_value(), 'Test';
|
||||
|
||||
$obj->set_value(undef);
|
||||
is $obj->serialize_qualified, '<MyElement xsi:nil="true" xmlns="http://www.w3.org/2001/XMLSchema" />';
|
||||
|
||||
$obj->__set_nillable(0);
|
||||
is $obj->__get_nillable(), 0;
|
||||
|
||||
eval { SOAP::WSDL::XSD::Typelib::Element::__get_nillable() };
|
||||
like $@, qr{Cannot \s call}xms;
|
||||
eval { SOAP::WSDL::XSD::Typelib::Element::__set_nillable() };
|
||||
like $@, qr{Cannot \s call}xms;
|
||||
|
||||
is $obj->start_tag({empty => 1}), '<MyElement />';
|
||||
is $obj->start_tag({nil => 1}), '', 'empty string with nil option and NILLABLE false';
|
||||
$obj->set_value('Test');
|
||||
|
||||
|
||||
eval { is @{ $obj }, 1, 'ARRAYIFY' };
|
||||
fail 'ARRAYIFY' if ($@);
|
||||
Reference in new issue
Block a user