Start an embedded Mongo DB server and run your PHPUnit integration tests easily.
Writing integration tests using Mongo DB and PHP should be easy (it is in Java), this library allows you to quickly start an embedded Mongo DB server before running your tests.
The library starts a real Mongo DB server so you must have Java installed, then install the library using composer.
composer install --save-dev php-embedded-mongo
// Create and starts an embedded Mongo DB server
$mongoServer = new MongoServer();
$mongoServer->start();
...
// Execute your PHPUnit tests
...
// Stops ths embedded Mongo DB server
$mongoServer->stop();
Easy, isn't it ?
This library is not complete neither stable, if you want us to improve it feel free to post a Github issue.
Here are important things to know about the behavior of the server :
- For now port numbers are not configurable, 2 ports are used
4309
and27017
and must be free ; - Port
27017
is used by the Mongo DB process (remember the library uses a real Mongo server) ; - Port
4309
allows to send commands to a Java process which drives the Mongo DB process ; - Log outputs location is not configurable, it default to
output.log
.
- First very basic UNIX support.
- First alpha version.