ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/src/Configuration/test/test_ConfigArea.pm
Revision: 1.6.2.1
Committed: Fri Aug 4 08:34:16 2000 UTC (24 years, 9 months ago) by williamc
Content type: text/plain
Branch: HPWbranch
Changes since 1.6: +88 -50 lines
Log Message:
new feature testing

File Contents

# User Rev Content
1 williamc 1.1 #
2     # Tool test suite
3     #
4    
5     package Configuration::test::test_ConfigArea;
6     require 5.001;
7     use Configuration::ConfigArea;
8    
9 williamc 1.6.2.1 @ISA = ("Utilities::TestClass"); #methods both from the test class
10 williamc 1.1
11    
12     sub init {
13     my $self=shift;
14 williamc 1.6.2.1 $self->{arealoc}=$self->temparea("")."/ConfigArea";
15 williamc 1.1 }
16    
17     sub test {
18     my $self=shift;
19     $self->newtest("Initiation test - file not existing");
20 williamc 1.6.2.1 $self->newobject();
21    
22     $self->newtest("name and version setting");
23     $self->{name}="testproject";
24     $self->{version}="testversion";
25     $self->testinterface("name",$self->{name});
26     $self->testinterface("version",$self->{version});
27 williamc 1.4 $self->_areatest();
28 williamc 1.6.2.1
29     $self->newtest("setup test");
30     $self->testinterface("setup",$self->{arealoc});
31     my $area=$self->{arealoc}."/".$self->{name}."_".$self->{version};
32     $self->_teststructure($area);
33    
34     $self->newtest("location method test");
35     $self->expect($area);
36     $self->testinterface("location");
37     $self->clearexpect();
38 williamc 1.4
39 williamc 1.3 $self->newtest("simple persistence testing");
40 williamc 1.2 undef $self->{object};
41 williamc 1.6.2.1 $self->newobject();
42     $self->testinterface("verbosity",1);
43     $self->testinterface("bootstrapfromlocation",$area);
44     $self->expect($area);
45     my $location=$self->testinterface("location");
46     $self->clearexpect();
47     $self->_areatest();
48     $self->_testlink();
49    
50     $self->newtest("setup test - specify dir name");
51     $self->testinterface("setup",$self->{arealoc},"fred");
52     my $area2=$self->{arealoc}."/fred";
53     $self->_teststructure($area2);
54 williamc 1.4
55     $self->newtest("Can we Move ConfigArea?");
56 williamc 1.6.2.1 $self->newobject();
57     my $area3=$self->{arealoc}."/copy".$self->{name}."_".$self->{version};
58     rename($area,$area3);
59     $self->testinterface("bootstrapfromlocation",$area3);
60     $self->expect($area3);
61 williamc 1.4 $self->testinterface("location");
62     $self->clearexpect();
63     $self->_areatest();
64 williamc 1.6.2.1 $self->_teststructure($area3);
65    
66     $self->newtest("Area linking Test");
67     $self->testinterface("linkto", $area2);
68     $self->testinterface("save");
69     $self->_testlink($area2);
70     $self->newobject();
71     $self->testinterface("bootstrapfromlocation",$area3);
72     $self->_areatest();
73     $self->_testlink($area2);
74    
75     $self->newtest("Area unlinking Test");
76     $self->testinterface("unlinkarea");
77     $self->_testlink("");
78     $self->newobject();
79     $self->testinterface("bootstrapfromlocation",$area3);
80     $self->_testlink();
81 williamc 1.6
82     $self->newtest("Make a satelite area");
83 williamc 1.6.2.1 $self->testinterface("satellite",$self->{arealoc},"sat");
84     $self->_teststructure($self->{arealoc}."/sat");
85 williamc 1.6
86 williamc 1.4 }
87    
88 williamc 1.6.2.1
89 williamc 1.4 sub _areatest {
90     my $self=shift;
91 williamc 1.6.2.1 $self->expect($self->{name});
92     $self->testinterface("name");
93     $self->clearexpect();
94     $self->expect($self->{version});
95     $self->testinterface("version");
96     $self->clearexpect();
97 williamc 1.4 }
98    
99 williamc 1.6.2.1 sub _teststructure {
100 williamc 1.4 my $self=shift;
101 williamc 1.6.2.1 my $areadir=shift;
102     my $workdir=$areadir."/".$self->{object}->{admindir};
103 williamc 1.4
104 williamc 1.6.2.1 $self->verifydir($areadir);
105     $self->verifydir($workdir);
106     $self->verifydir($workdir."/".$self->{object}->{cachedir});
107     $self->verifyexists($workdir."/Environment");
108     }
109 williamc 1.4
110 williamc 1.6.2.1 sub _testlink {
111     my $self=shift;
112     my $areadir=shift;
113     my $ret=$self->testinterface("linkarea");
114     if ( (! defined $areadir) || ($areadir eq "" ) ) {
115     if ( ! defined $ret ) {
116     $self->testpass("No area linked as expected");
117     }
118     else {
119     $self->testfail("area returned when none expected - link failed");
120     }
121 williamc 1.4 }
122     else {
123 williamc 1.6.2.1 if ( $ret->location() ne $areadir) {
124     $self->testfail("wrong area returned - link failed");
125     }
126     else {
127     $self->testpass("area linked OK ($areadir)");
128     }
129 williamc 1.4 }
130 williamc 1.1 }