source: trunk/xgraph/jpgraph/Examples/testsuit.php@ 42

Last change on this file since 42 was 42, checked in by marrucho, 11 years ago
File size: 2.9 KB
Line 
1<?php // content="text/plain; charset=utf-8"
2//=======================================================================
3// File: TESTSUIT.PHP
4// Description: Run all the example script in current directory
5// Created: 2002-07-11
6// Ver: $Id: testsuit.php,v 1.1.2.1 2004/03/27 12:43:07 aditus Exp $
7//
8// License: This code is released under QPL 1.0
9// Copyright (C) 2001,2002 Johan Persson
10//========================================================================
11
12//-------------------------------------------------------------------------
13//
14// Usage: testsuit.php[?type=1] Generates all non image map scripts
15// testsuit.php?type=2 Generates client side image map scripts
16//
17//-------------------------------------------------------------------------
18class TestDriver {
19
20 private $iType;
21 private $iDir;
22
23 function TestDriver($aType=1,$aDir='') {
24 $this->iType = $aType;
25 if( $aDir == '' ) {
26 $aDir = getcwd();
27 }
28 if( !chdir($aDir) ) {
29 die("PANIC: Can't access directory : $aDir");
30 }
31 $this->iDir = $aDir;
32 }
33
34 function GetFiles() {
35 $d = @dir($this->iDir);
36 $a = array();
37 while( $entry=$d->Read() ) {
38 if( strstr($entry,".php") && strstr($entry,"x") && !strstr($entry,"show") && !strstr($entry,"csim") ) {
39 $a[] = $entry;
40 }
41 }
42 $d->Close();
43 if( count($a) == 0 ) {
44 die("PANIC: Apache/PHP does not have enough permission to read the scripts in directory: $this->iDir");
45 }
46 sort($a);
47 return $a;
48 }
49
50 function GetCSIMFiles() {
51 $d = @dir($this->iDir);
52 $a = array();
53 while( $entry=$d->Read() ) {
54 if( strstr($entry,".php") && strstr($entry,"csim") ) {
55 $a[] = $entry;
56 }
57 }
58 $d->Close();
59 if( count($a) == 0 ) {
60 die("PANIC: Apache/PHP does not have enough permission to read the CSIM scripts in directory: $this->iDir");
61 }
62 sort($a);
63 return $a;
64 }
65
66
67 function Run() {
68 switch( $this->iType ) {
69 case 1:
70 $files = $this->GetFiles();
71 break;
72 case 2:
73 $files = $this->GetCSIMFiles();
74 break;
75 default:
76 die('Panic: Unknown type of test');
77 break;
78 }
79 $n = count($files);
80 echo "<h2>Visual test suit for JpGraph</h2>";
81 echo "Testtype: " . ($this->iType==1 ? ' Standard images ':' Image map tests ');
82 echo "<br>Number of tests: $n<p>";
83 echo "<ol>";
84
85 for( $i=0; $i<$n; ++$i ) {
86 if( $this->iType ==1 ) {
87 echo '<li><a href="show-example.php?target='.urlencode($files[$i]).'"><img src="'.$files[$i].'" border=0 align=top></a><br><strong>Filename:</strong> <i>'.basename($files[$i])."</i>\n";
88 }
89 else {
90 echo '<li><a href="show-example.php?target='.urlencode($files[$i]).'">'.$files[$i]."</a>\n";
91 }
92 }
93 echo "</ol>";
94
95 echo "<p>Done.</p>";
96 }
97}
98
99$type=@$_GET['type'];
100if( empty($type) ) {
101 $type=1;
102}
103
104$driver = new TestDriver($type);
105$driver->Run();
106
107?>
Note: See TracBrowser for help on using the repository browser.