@@ -13,8 +13,8 @@ components (with a lower barrier of entry) while also keeping the overall design
13
13
fast and powerful.
14
14
15
15
## Documentation
16
- - http://10gen-labs.github.io/mongo-php-driver-prototype
17
16
- http://docs.php.net/set.mongodb
17
+ - http://10gen-labs.github.io/mongo-php-driver-prototype
18
18
19
19
## Installation
20
20
@@ -39,18 +39,47 @@ See [CONTRIBUTING.md](CONTRIBUTING.md)
39
39
40
40
## Testing
41
41
42
- To execute the driver's test suite:
42
+ The test suites expects to find ` PHONGO-SERVERS.json ` in the system temp directory (typically ` /tmp ` ).
43
+ This file should contain JSON object with MONGODB URIs, similar to the following template
44
+
45
+ ```
46
+ {
47
+ "STANDALONE": "mongodb:\/\/192.168.112.10:2000",
48
+ "STANDALONE_SSL": "mongodb:\/\/192.168.112.10:2100",
49
+ "STANDALONE_AUTH": "mongodb:\/\/root:[email protected] :2200\/?authSource=admin",
50
+ "STANDALONE_X509": "mongodb:\/\/C=US,ST=New York,L=New York City,O=MongoDB,OU=KernelUser,[email protected] :2300\/?authSource=$external&authMechanism=MONGODB-X509",
51
+ "STANDALONE_PLAIN": "mongodb:\/\/root:[email protected] :2400\/?authSource=admin",
52
+ "REPLICASET": "mongodb:\/\/192.168.112.10:3000,192.168.112.10:3001,192.168.112.10:3002\/?replicaSet=REPLICASET"
53
+ }
54
+ ```
55
+
56
+ Alternatively, we provide, and use, [ Vagrant] ( https://www.vagrantup.com/ ) to spin up couple of VMs
57
+ where we setup and configure MongoDB according to our needs.
58
+
43
59
44
60
```
45
61
$ make vm # requires vagrant (www.vagrantup.com)
46
62
$ make test-bootstrap # Spins up mongod's in the virtual machines
47
- $ make test # Executes the test suite against the virtual machines
48
63
```
49
64
50
- Some tests depend on userland PHP libraries (e.g. creating data fixtures) and
51
- may be skipped if those dependencies are not available. Those libraries may be
52
- installed with via Composer:
65
+ The ` test-bootstrap ` make target will then generate the required ` PHONGO-SERVERS.json ` .
66
+
67
+
68
+ To execute the test suite:
53
69
54
70
```
55
- $ make composer
71
+ $ make test # Executes the test suite against the virtual machines
56
72
```
73
+
74
+ The bundled [ Vagrantfile] ( Vagrantfile ) also contains few other (growing) list of VMs
75
+ that can be provisioned to execute the test suite on various platforms.
76
+
77
+ These are automatically executed by the ` make distcheck ` , which will package a new PECL archive,
78
+ spin up the various operating systems, install the newly packaged archive, and execute
79
+ the test suite.
80
+
81
+
82
+ ## Related projects
83
+ - [ Official high-level library] ( https://github.com/10gen-labs/mongo-php-library-prototype )
84
+ - [ MongoDB Transistor] ( https://github.com/bjori/mongo-php-transistor ) Lightweight ODM using the [ Persistable] ( http://php.net/bson\\ persistable ) interface
85
+
0 commit comments