ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/src/ActiveDoc/test/test_PreProcessedFile.pm
Revision: 1.4.4.1
Committed: Thu Aug 17 15:56:54 2000 UTC (24 years, 8 months ago) by williamc
Content type: text/plain
Branch: HPWbranch
CVS Tags: BuildSystemProto1, V0_18_0, V0_18_0model, V0_17_1, V0_18_0alpha, V0_17_0, V0_16_4, V0_16_3, V0_16_2, V0_16_1, V0_16_0, V0_15_1, V0_15_0, V0_15_0beta
Branch point for: V0_17branch, V0_16branch, V0_15branch
Changes since 1.4: +46 -34 lines
Log Message:
Integrated to simpledoc

File Contents

# Content
1 #
2 # PreProcessedFile test suite
3 #
4
5 package ActiveDoc::test::test_PreProcessedFile;
6 require 5.001;
7 use ActiveDoc::PreProcessedFile;
8 use ObjectUtilities::ObjectStore;
9
10 @ISA = ("Utilities::TestClass"); #methods both from the test class
11
12 sub init {
13 my $self=shift;
14 $self->{testareadir}=$self->temparea()."/PreProcessFile";
15 $self->{testfile}=$self->datadir()."/PreProcessorTest";
16 $self->{checktestfile}=$self->datadir()."/PreProcessorTest-check";
17 $self->{cache}=URL::URLcache->new($self->{testareadir});
18 $self->{dbstore}=ObjectUtilities::ObjectStore->
19 new($self->{testareadir}."/DB");
20 }
21
22 sub linetest {
23 my $self=shift;
24
25 # line tracing
26 $self->newtest("line tracing test");
27 $self->expect(2,"");
28 my ($line,$obj)=$self->testinterface(qw(realline 2));
29
30 my $cvsurl="cvs://cmscvs.cern.ch/cvs_server/repositories/SCRAM?auth=pserver&module=test/testinclude&passkey=AA_:yZZ3e&user=anonymous";
31 my $cvsurl2="cvs://cmscvs.cern.ch/cvs_server/repositories/SCRAM?auth=pserver&module=test/testinclude2&passkey=AA_:yZZ3e&user=anonymous";
32 my $cvsurl3="cvs://cmscvs.cern.ch/cvs_server/repositories/SCRAM?auth=pserver&module=test/testinclude3&passkey=AA_:yZZ3e&user=anonymous";
33 $self->_testobj("file:".$self->{testfile},$obj);
34 $self->clearexpect();
35 $self->expect(3,"");
36 ($line,$obj)=$self->testinterface(qw(realline 3));
37 $self->_testobj("file:".$self->{testfile},$obj);
38 $self->clearexpect();
39 $self->expect(3,"");
40 ($line,$obj)=$self->testinterface(qw(realline 6));
41 $self->_testobj($cvsurl,$obj);
42 $self->clearexpect();
43 $self->expect(1,"");
44 ($line,$obj)=$self->testinterface(qw(realline 8));
45 $self->_testobj($cvsurl2,$obj);
46 $self->clearexpect();
47 $self->expect(3,"");
48 ($line,$obj)=$self->testinterface(qw(realline 10));
49 $self->clearexpect();
50 $self->_testobj($cvsurl2,$obj);
51 $self->expect(3,"");
52 ($line,$obj)=$self->testinterface(qw(realline 16));
53 $self->_testobj($cvsurl3,$obj);
54 $self->clearexpect();
55 $self->expect(7,"");
56 ($line,$obj)=$self->testinterface(qw(realline 20));
57 $self->_testobj($cvsurl,$obj);
58 $self->clearexpect();
59 $self->expect(3,"");
60 ($line,$obj)=$self->testinterface(qw(realline 22));
61 $self->_testobj("file:".$self->{testfile},$obj);
62 $self->clearexpect();
63 $self->expect(4,"");
64 ($line,$obj)=$self->testinterface(qw(realline 23));
65 $self->_testobj("file:".$self->{testfile},$obj);
66 $self->clearexpect();
67 }
68
69 sub _testobj {
70 my $self=shift;
71 my $string=shift;
72 my $obj=shift;
73
74 if ( $obj->url() ne $string ) {
75 $self->testfail("Expecting $string got ".$obj->url());
76 }
77 else {
78 $self->testpass("Correct File : $string" );
79 }
80 }
81 sub test {
82 my $self=shift;
83
84 $self->newtest("Initiation test");
85 $self->newobject($self->{cache},$self->{dbstore});
86 $self->testinterface("verbosity",1);
87 $self->{object}->{switch}->verbosity(1);
88 $self->{object}->{switch}->{switch}->verbosity(1);
89 $self->testinterface("url","file:".$self->{testfile});
90
91 ($expectedurl=$self->{testfile});
92 $self->expect("file:".$expectedurl);
93 $self->testinterface("url");
94 $self->clearexpect();
95
96 $self->newtest("File test");
97 my $origfile=$self->testinterface("file");
98 $self->verify($origfile, $self->{testfile});
99
100 $self->newtest("Construction test");
101 $self->testinterface("update");
102 my $file=$self->testinterface("ProcessedFile");
103 $self->verify($file,$self->{checktestfile});
104
105 $self->newtest("Store test");
106 my $storefile=$self->temparea()."/".$self->newfilename();
107 $self->testinterface("store", $storefile);
108 $self->testinterface("store", $storefile); # multiple calls to store
109 # must be possible
110
111 $self->newtest("Restore test");
112 $self->newobject($self->{cache},$self->{dbstore});
113 $self->testinterface("restore", $storefile);
114 $self->linetest();
115
116 $self->expect($file);
117 $self->testinterface("ProcessedFile");
118 $self->clearexpect();
119
120 $self->expect($origfile);
121 $self->testinterface("file");
122 $self->clearexpect();
123
124 if ( $self->{object}->{lastsequence} ne 1 ) {
125 $self->testfail("sequence number corrupted got ".
126 $self->{object}->{lastsequence});
127 }
128 else {
129 $self->testpass('sequence number stored OK');
130 }
131
132 $self->newtest("Update test - out of date check");
133 $self->testinterface("update");
134 @array=$self->testinterface("updatedfiles");
135 if ( $#array != -1 ) {
136 $self->testfail("Files were updated @array when none should of been");
137 }
138 $self->testpass("No files updated therefore no build as expected");
139
140 $file=$self->testinterface("ProcessedFile");
141 $self->verify($file,$self->{checktestfile});
142
143 $self->newtest("Update test - dependency changed");
144 $self->testinterface("verbosity",1);
145 $self->{object}->{switch}->verbosity(1);
146 $self->{object}->{switch}->{switch}->verbosity(1);
147 $changedurl="cvs://cmscvs.cern.ch/cvs_server/repositories/SCRAM?module=test/testinclude3&auth=pserver&passkey=AA_:yZZ3e&user=anonymous";
148 $changedurl2="cvs://cmscvs.cern.ch/cvs_server/repositories/SCRAM?auth=pserver&module=test/testinclude&passkey=AA_:yZZ3e&user=anonymous";
149 $self->{object}->{switch}->urldownload($changedurl);
150 $self->testinterface("update");
151 $self->expect($changedurl2);
152 $self->testinterface("updatedfiles");
153 $self->clearexpect();
154 $file=$self->testinterface("ProcessedFile");
155 $self->verify($file,$self->{checktestfile});
156 }
157
158 sub basequery {
159 my $self=shift;
160 return $self->{basequery};
161 }