summaryrefslogtreecommitdiff
path: root/pear/tests/pear_config.phpt
blob: 186c3a0cc3c307aedc4236241a61cefb49b244cc (plain)
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
--TEST--
PEAR_Config
--FILE--
<?php

error_reporting(E_ALL);
include "../PEAR/Config.php";
copy("system.input", "system.conf");
copy("user.input", "user.conf");
PEAR::setErrorHandling(PEAR_ERROR_DIE, "%s\n");
dumpall();

print "creating config object\n";
$config = new PEAR_Config("user.conf", "system.conf");

// overriding system values
$config->set("master_server", "pear.localdomain");
$config->writeConfigFile();
dumpall();
var_dump($config->get("master_server"));

// going back to defaults
$config->toDefault("master_server");
$config->writeConfigFile();
dumpall();

// 

print "done\n";

unlink("user.conf");
unlink("system.conf");

// ------------------------------------------------------------------------- //

function dumpit($file)
{
	$fp = fopen($file, "r");
	print "$file:";
	$data = unserialize(fread($fp, filesize($file)));
	fclose($fp);
	if (!is_array($data)) {
		print " <empty>\n";
		return;
	}
	foreach ($data as $k => $v) {
		print " $k=\"$v\"";
	}
	print "\n";
}

function dumpall()
{
	print "dumping...\n";
	dumpit("system.conf");
	dumpit("user.conf");
}

?>
--EXPECT--
dumping...
system.conf: master_server="pear.php.net"
user.conf: <empty>
creating config object
dumping...
system.conf: master_server="pear.php.net"
user.conf: master_server="pear.localdomain"
string(16) "pear.localdomain"
dumping...
system.conf: master_server="pear.php.net"
user.conf:
done