1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
# -*-perl-*-
use strict;
use Test::More tests => 12;
{
use XTM;
use XTM::baseName;
# any generic child will do
my $b = new XTM::baseName;
$b->add_rumsti (42);
is ($b->rumsti, 42, 'generic value');
$b->add_ramsti_s (13);
$b->add_ramsti_s (26);
is ($b->ramsti_s, 2, 'generic values');
}
{
use XTM::baseName;
my $b = new XTM::baseName;
use XTM::baseNameString;
my $bs = new XTM::baseNameString;
$b->add ($bs);
is (ref ($b->baseNameString), 'XTM::baseNameString', 'single/single add');
}
foreach my $ty (qw(resourceRef topicRef subjectIndicatorRef)) {
eval "use XTM::$ty";
my $rr;
eval "\$rr = new XTM::$ty (href => 'xxxx')";
is ($rr->href, 'xxxx', "href read $ty");
$rr->href ('zzzz');
is ($rr->href, 'zzzz', "href read/write");
}
{
my $s = new XTM::scope;
$s->add (
new XTM::topicRef (href => '#aaaaa'),
new XTM::subjectIndicatorRef (href => '#sssss'),
new XTM::resourceRef (href => '#rrrrrrr'));
is (@{$s->references}, 3, 'references');
# use Data::Dumper;
# print Dumper $s;
}
{
use XTM::occurrence;
my $o = new XTM::occurrence;
use XTM::resourceData;
my $rd = new XTM::resourceData (data => "xxxx");
$o->add ($rd);
is (ref ($o->resource), 'XTM::resourceData', 'resourceData');
use XTM::resourceRef;
my $rr = new XTM::resourceRef ();
$o->add ($rr);
is (ref ($o->resource), 'XTM::resourceRef', 'resourceRef');
}
__END__
my $t = new XTM::topic (id => 'xxx');
foreach (1..3) {
$t->add ($b, $b);
}
is (@{$t->baseNames}, 6, 'test multiple/multiple add');
foreach (@{$t->baseNames}) {
is (ref ($_->baseNameString), 'XTM::baseNameString', 'test multiple add inner');
}
__END__
|