View difference between Paste ID: w1HHtwKT and y1fhT33G
SHOW: | | - or go back to the newest paste.
1
class User{
2
	var $db;
3
	
4
	function __construct(){
5
		$this->db = new Some_DB();
6
	}
7
	
8
	/*
9
	* returns true if user user owns account
10
	*/
11
	function is_user_account($user_id, $acct_id){
12
		$db = $this->db;
13
14
		$sql = "SELECT um_active FROM UserMaps WHERE acct_id = ? AND user_id = ?";
15
		$res = $db->DbGetOne($sql, array($acct_id,$user_id));
16
17
		return $res;
18
	}
19
20
}
21
22
23
function test_is_user_account(){
24
        $user = new User();
25-
		$user->db = new MockDB();
25+
	$db = new MockDB();
26
	
27-
		$has_access = $user->is_user_account(1,1);
27+
	$db->usermaps[1][1] = 1;
28-
		assertTrue($has_access);
28+
        $db->usermaps[1][2] = 0;
29
        $db->usermaps[2][1] = 0;
30
        $db->usermaps[2][2] = 1;
31
        $db->usermaps[2][3] = 1;
32
33
	$user->db = $db;
34
		
35-
		return 1;
35+
	$has_access = $user->is_user_account(1,1);
36
	assertTrue($has_access);
37
	$has_access = $user->is_user_account(1,2);
38
	assertFalse($has_access);
39
40
}
41
42
class MockDB{
43
44
	function DbGetOne($sql, $params){
45
		$result = @$this->usermaps[$array[1]][$array[0]];
46
	}
47
}