aboutsummaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authordakkar <dakkar@luxion>2006-02-04 11:30:55 +0000
committerdakkar <dakkar@luxion>2006-02-04 11:30:55 +0000
commitb7a564c9e4fa0c82b29bc336976c67ce49c685e9 (patch)
tree33b70d62beba19327c42e4b82eb8869956842411 /t
parentusato Class::Std anche negli step (diff)
downloadWebCoso-b7a564c9e4fa0c82b29bc336976c67ce49c685e9.tar.gz
WebCoso-b7a564c9e4fa0c82b29bc336976c67ce49c685e9.tar.bz2
WebCoso-b7a564c9e4fa0c82b29bc336976c67ce49c685e9.zip
test per le risorse
git-svn-id: svn://luxion/repos/WebCoso/trunk@144 fcb26f47-9200-0410-b104-b98ab5b095f3
Diffstat (limited to 't')
-rw-r--r--t/04-resource.t41
1 files changed, 41 insertions, 0 deletions
diff --git a/t/04-resource.t b/t/04-resource.t
new file mode 100644
index 0000000..05fd5b6
--- /dev/null
+++ b/t/04-resource.t
@@ -0,0 +1,41 @@
+#!/usr/bin/perl
+use strict;
+use warnings;
+use Test::More 'no_plan';
+use Test::Exception;
+
+BEGIN { use_ok('WebCoso::Resource'); }
+
+my $r=WebCoso::Resource->new();
+
+isa_ok($r,'WebCoso::Resource');
+
+$r->set_property(prop1=>'value1');
+is($r->get_property('prop1'),'value1','simple global');
+is($r->get_property({},'prop1'),'value1','explicit global');
+is($r->get_property({a1=>1,a2=>3},'prop1'),'value1','over global');
+
+$r->set_property(prop1=>'value2');
+is($r->get_property('prop1'),'value2','simple global redef');
+is($r->get_property({},'prop1'),'value2','explicit global redef');
+is($r->get_property({a1=>1,a2=>3},'prop1'),'value2','over global redef');
+
+$r->set_property({},prop1=>'value3');
+is($r->get_property('prop1'),'value3','simple global redef');
+is($r->get_property({},'prop1'),'value3','explicit global redef');
+is($r->get_property({a1=>1,a2=>3},'prop1'),'value3','over global redef');
+
+$r->set_property({a1=>3},prop2=>'v1');
+ok(! defined $r->get_property('prop2'),'undef on generalization');
+is($r->get_property({a1=>3},'prop2'),'v1','specific');
+is($r->get_property({a1=>3,a2=>3},'prop2'),'v1','over specific');
+
+$r->set_property({a1=>2},prop2=>'v2');
+ok(! defined $r->get_property('prop2'),'undef on generalization');
+is($r->get_property({a1=>3},'prop2'),'v1','specific, oldval');
+is($r->get_property({a1=>3,a2=>3},'prop2'),'v1','over specific, oldval');
+is($r->get_property({a1=>2},'prop2'),'v2','specific, newval');
+is($r->get_property({a1=>2,a2=>3},'prop2'),'v2','over specific, newval');
+
+$r->set_property({a1=>1,a2=>2},prop3=>'vx');
+ok(! defined $r->get_property({a1=>1},'prop3'),'undef on generalization, 2');