11
11
12
12
class ServerTest extends \PHPUnit \Framework \TestCase
13
13
{
14
- public function testCreateWithURL () {
15
- $ url = "http://localhost:5984 " ;
14
+ public function setUp () {
15
+ // use some url and client variables
16
+ $ this ->url = "http://localhost:5984 " ;
17
+ $ this ->client = new \GuzzleHttp \Client (["base_uri " => $ this ->url ]);
18
+
19
+ // create the first request to check we can connect, can be added to
20
+ // the mocks for any test that wants it
21
+ $ couchdb1 = '{"couchdb":"Welcome","uuid":"fce3d5aabfe189c988273c0ffa8d375b","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}} ' ;
22
+ $ this ->db_response = new Response (200 , [], $ couchdb1 );
23
+ }
16
24
17
- $ server = new \PHPCouchDB \Server (["url " => $ url ]);
25
+ public function testCreateWithURL () {
26
+ $ server = new \PHPCouchDB \Server (["url " => $ this ->url ]);
18
27
19
28
$ this ->assertObjectHasAttribute ('client ' , $ server );
20
29
$ this ->assertAttributeInstanceOf ('\GuzzleHttp\ClientInterface ' , 'client ' , $ server );
21
30
}
22
31
23
32
public function testCreateWithClient () {
24
- $ url = "http://localhost:5984 " ;
25
- $ client = new \GuzzleHttp \Client (["base_uri " => $ url ]);
26
-
27
- $ server = new \PHPCouchDB \Server (["client " => $ client ]);
33
+ $ server = new \PHPCouchDB \Server (["client " => $ this ->client ]);
28
34
29
35
$ this ->assertObjectHasAttribute ('client ' , $ server );
30
36
$ this ->assertAttributeInstanceOf ('\GuzzleHttp\ClientInterface ' , 'client ' , $ server );
31
37
}
32
38
33
39
public function testGetVersion () {
34
-
35
- $ couchdb1 = '{"couchdb":"Welcome","uuid":"fce3d5aabfe189c988273c0ffa8d375b","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}} ' ;
36
- $ response1 = new Response (200 , [], $ couchdb1 );
37
-
38
- // Create a mock and queue two responses.
39
- $ mock = new MockHandler ([ $ response1 , $ response1 ]);
40
+ $ mock = new MockHandler ([ $ this ->db_response , $ this ->db_response ]);
40
41
41
42
$ handler = HandlerStack::create ($ mock );
42
43
$ client = new Client (['handler ' => $ handler ]);
@@ -48,30 +49,23 @@ public function testGetVersion() {
48
49
}
49
50
50
51
public function testGetAllDbs () {
51
- $ couchdb1 = '{"couchdb":"Welcome","uuid":"fce3d5aabfe189c988273c0ffa8d375b","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}} ' ;
52
- $ db_response = new Response (200 , [], $ couchdb1 );
53
-
54
52
$ dbs = ["test " , "items " ];
55
53
$ response1 = new Response (200 , [], json_encode ($ dbs ));
56
54
57
- $ mock = new MockHandler ([ $ db_response , $ response1 ]);
55
+ $ mock = new MockHandler ([ $ this -> db_response , $ response1 ]);
58
56
$ handler = HandlerStack::create ($ mock );
59
57
$ client = new Client (['handler ' => $ handler ]);
60
58
61
59
// userland code starts
62
60
$ server = new \PHPCouchDB \Server (["client " => $ client ]);
63
61
$ this ->assertEquals ($ dbs , $ server ->getAllDbs ());
64
-
65
62
}
66
63
67
64
public function testUseADbThatDoesExist () {
68
- $ couchdb1 = '{"couchdb":"Welcome","uuid":"fce3d5aabfe189c988273c0ffa8d375b","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}} ' ;
69
- $ db_response = new Response (200 , [], $ couchdb1 );
70
-
71
65
$ egdb1 = '{"db_name":"egdb","update_seq":"0-g1AAAABXeJzLYWBgYMpgTmEQTM4vTc5ISXLIyU9OzMnILy7JAUklMiTV____PyuRAY-iPBYgydAApP5D1GYBAJmvHGw","sizes":{"file":8488,"external":0,"active":0},"purge_seq":0,"other":{"data_size":0},"doc_del_count":0,"doc_count":0,"disk_size":8488,"disk_format_version":6,"data_size":0,"compact_running":false,"instance_start_time":"0"} ' ;
72
66
$ response1 = new Response (200 , [], $ egdb1 );
73
67
74
- $ mock = new MockHandler ([ $ db_response , $ response1 ]);
68
+ $ mock = new MockHandler ([ $ this -> db_response , $ response1 ]);
75
69
$ handler = HandlerStack::create ($ mock );
76
70
$ client = new Client (['handler ' => $ handler ]);
77
71
@@ -81,13 +75,10 @@ public function testUseADbThatDoesExist() {
81
75
}
82
76
83
77
public function testUseADbWithCreateThatDoesExist () {
84
- $ couchdb1 = '{"couchdb":"Welcome","uuid":"fce3d5aabfe189c988273c0ffa8d375b","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}} ' ;
85
- $ db_response = new Response (200 , [], $ couchdb1 );
86
-
87
78
$ egdb1 = '{"db_name":"egdb","update_seq":"0-g1AAAABXeJzLYWBgYMpgTmEQTM4vTc5ISXLIyU9OzMnILy7JAUklMiTV____PyuRAY-iPBYgydAApP5D1GYBAJmvHGw","sizes":{"file":8488,"external":0,"active":0},"purge_seq":0,"other":{"data_size":0},"doc_del_count":0,"doc_count":0,"disk_size":8488,"disk_format_version":6,"data_size":0,"compact_running":false,"instance_start_time":"0"} ' ;
88
79
$ response1 = new Response (200 , [], $ egdb1 );
89
80
90
- $ mock = new MockHandler ([ $ db_response , $ response1 ]);
81
+ $ mock = new MockHandler ([ $ this -> db_response , $ response1 ]);
91
82
$ handler = HandlerStack::create ($ mock );
92
83
$ client = new Client (['handler ' => $ handler ]);
93
84
@@ -100,13 +91,10 @@ public function testUseADbWithCreateThatDoesExist() {
100
91
* @expectedException \PHPCouchDB\Exception\ServerException
101
92
*/
102
93
public function testUseADbThatDoesNotExist () {
103
- $ couchdb1 = '{"couchdb":"Welcome","uuid":"fce3d5aabfe189c988273c0ffa8d375b","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}} ' ;
104
- $ db_response = new Response (200 , [], $ couchdb1 );
105
-
106
94
$ egdb1 = '{"error":"not_found","reason":"Database does not exist."} ' ;
107
95
$ response1 = new Response (404 , [], $ egdb1 );
108
96
109
- $ mock = new MockHandler ([ $ db_response , $ response1 ]);
97
+ $ mock = new MockHandler ([ $ this -> db_response , $ response1 ]);
110
98
$ handler = HandlerStack::create ($ mock );
111
99
$ client = new Client (['handler ' => $ handler ]);
112
100
@@ -116,22 +104,18 @@ public function testUseADbThatDoesNotExist() {
116
104
}
117
105
118
106
public function testUseADbWithCreateThatDoesNotExist () {
119
- $ couchdb1 = '{"couchdb":"Welcome","uuid":"fce3d5aabfe189c988273c0ffa8d375b","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}} ' ;
120
- $ db_response = new Response (200 , [], $ couchdb1 );
121
-
122
107
$ egdb1 = '{"error":"not_found","reason":"Database does not exist."} ' ;
123
108
$ response1 = new Response (404 , [], $ egdb1 );
124
109
125
110
$ egdb2 = '{"ok":true} ' ;
126
111
$ response2 = new Response (201 , [], $ egdb2 );
127
112
128
- $ mock = new MockHandler ([ $ db_response , $ response1 , $ response2 ]);
113
+ $ mock = new MockHandler ([ $ this -> db_response , $ response1 , $ response2 ]);
129
114
$ handler = HandlerStack::create ($ mock );
130
115
$ client = new Client (['handler ' => $ handler ]);
131
116
132
117
// userland code starts
133
118
$ server = new \PHPCouchDB \Server (["client " => $ client ]);
134
119
$ this ->assertInstanceOf ("\PHPCouchDB\Database " , $ server ->useDb (["name " => "egdb " , "create_if_not_exists " => true ]));
135
120
}
136
-
137
121
}
0 commit comments