forked from khrome/php-sessions
/
test.php
executable file
·93 lines (83 loc) · 3.04 KB
/
test.php
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php
require_once('./Session.class.php');
require_once('./shim.php');
require_once(dirname(__FILE__) . '/simpletest/autorun.php');
$db = 'test';
$host = 'localhost';
$user = 'root';
$pass = '';
$links = Array();
class TestOfMySQLSession extends UnitTestCase {
function testLogIntoMySQL() {
global $db, $host, $user, $pass, $links;
$links['mysql'] = mysql_connect($host, $user, $pass, TRUE);
if(!mysql_select_db($db, $links['mysql'])){
throw(new Exception('database \''.$db.'\' could not be selected!'));
}
$this->assertNotNull($links['mysql']);
}
function testSavePHPModeMySQLSession(){
global $links;
Session::$hook = 'php';
Session::$source = 'mysql';
Session::$link = $links['mysql'];
$session = new Session($links['mysql']);
$session->set('foo', 'bar');
$this->assertEqual($_SESSION['foo'], 'bar');
$session->shutdown();
$this->assertNotEqual($_SESSION['foo'], 'bar');
$session = new Session($links['mysql']);
$this->assertEqual($_SESSION['foo'], 'bar');
$session->shutdown();
}
function testSaveCustomModeMySQLSession(){
global $links;
Session::$hook = 'custom';
Session::$source = 'mysql';
Session::$link = $links['mysql'];
$session = new Session($links['mysql']);
$session->set('foo', 'bar');
$this->assertEqual($session->get('foo'), 'bar');
$session->shutdown();
$this->assertNotEqual($session->get('foo'), 'bar');
$session = new Session($links['mysql']);
$this->assertEqual($session->get('foo'), 'bar');
$session->shutdown();
}
}
class TestOfMongoSession extends UnitTestCase {
function testLogIntoMongoDB() {
global $db, $host, $user, $pass, $links;
$connection = new Mongo($host);
$links['mongo'] = $connection->$db;
$this->assertNotNull($links['mongo']);
}
function testSavePHPModeMongoSession(){
global $links;
Session::$hook = 'php';
Session::$source = 'mongo';
Session::$link = $links['mongo'];
$session = new Session($links['mongo']);
$session->set('foo', 'bar');
$this->assertEqual($_SESSION['foo'], 'bar');
$session->shutdown();
$this->assertNotEqual($_SESSION['foo'], 'bar');
$session = new Session($links['mongo']);
$this->assertEqual($_SESSION['foo'], 'bar');
$session->shutdown();
}
function testSaveCustomModeMongoSession(){
global $links;
Session::$hook = 'custom';
Session::$source = 'mongo';
Session::$link = $links['mongo'];
$session = new Session($links['mongo']);
$session->set('foo', 'bar');
$this->assertEqual($session->get('foo'), 'bar');
$session->shutdown();
$this->assertNotEqual($session->get('foo'), 'bar');
$session = new Session($links['mongo']);
$this->assertEqual($session->get('foo'), 'bar');
$session->shutdown();
}
}