The docker-compose.yml file in this project references the Docker image ecd_database
which should be built first. Please refer to its repository: https://github.com/deregenboog/docker-ecd-database for instructions.
git clone git@github.com:deregenboog/ecd.git
cd ecd
make docker-build
make docker-up
make install
php bin/console doctrine:migrations:migrate --no-interaction
php bin/console hautelook:fixtures:load --no-interaction
npm install
(if you have npm installed locally, otherwise do so)The ECD web-application should now be accessible by pointing your web-browser to http://localhost/. PhpMyAdmin is available at port 81 for easy database access: http://localhost:81/ (user: ecd, password: ecd).
The test suite includes both unit tests and integration tests. The integration tests use a MySQL server running in a Docker container. Before running the tests the MySQL database needs to be built and seeded with data fixtures. To prevent this (slow) process to happen before each test, every test is wrapped in a transaction that is rolled back afterwards.
To run the full test suite run:
make docker-test-setup
make docker-test-run
make docker-test-teardown