mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
ffdceda255
Add a notion of service in libnetwork so that a group of endpoints which form a service can be treated as such so that service level features can be added on top. Initially as part of this PR the support to assign a name to the said service is added which results in DNS queries to the service name to return all the IPs of the backing endpoints so that DNS RR behavior on the service name can be achieved. Signed-off-by: Jana Radhakrishnan <mrjana@docker.com> |
||
---|---|---|
.. | ||
dnet | ||
daemon-configs.bats | ||
daemon.cfg | ||
helpers.bash | ||
README.md |
LibNetwork Integration Tests
Integration tests provide end-to-end testing of LibNetwork and Drivers.
While unit tests verify the code is working as expected by relying on mocks and artificially created fixtures, integration tests actually use real docker engines and communicate to it through the CLI.
Note that integration tests do not replace unit tests and Docker is used as a good use-case.
As a rule of thumb, code should be tested thoroughly with unit tests. Integration tests on the other hand are meant to test a specific feature end to end.
Integration tests are written in bash using the bats framework.
Pre-Requisites
- Bats (https://github.com/sstephenson/bats#installing-bats-from-source)
- Docker Machine (https://github.com/docker/machine)
- Virtualbox (as a Docker machine driver)
Running integration tests
- Start by [installing] (https://github.com/sstephenson/bats#installing-bats-from-source) bats on your system.
- If not done already, install docker-machine into /usr/bin
- Make sure Virtualbox is installed as well, which will be used by docker-machine as a driver to launch VMs
In order to run all integration tests, pass bats the test path:
$ bats test/integration/daemon-configs.bats