| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 | 
							- setup() {
 
-   IMAGE_NAME="$NAME:$VERSION"
 
- }
 
- # function relative to the current container / image
 
- build_image() {
 
-   #disable outputs
 
-   docker build -t $IMAGE_NAME $BATS_TEST_DIRNAME/../image &> /dev/null
 
- }
 
- run_image() {
 
-   CONTAINER_ID=$(docker run $@ -d $IMAGE_NAME)
 
-   CONTAINER_IP=$(get_container_ip_by_cid $CONTAINER_ID)
 
- }
 
- start_container() {
 
-   start_containers_by_cid $CONTAINER_ID
 
- }
 
- stop_container() {
 
-   stop_containers_by_cid $CONTAINER_ID
 
- }
 
- remove_container() {
 
-  remove_containers_by_cid $CONTAINER_ID
 
- }
 
- clear_container() {
 
-   stop_containers_by_cid $CONTAINER_ID
 
-   remove_containers_by_cid $CONTAINER_ID
 
- }
 
- is_service_running() {
 
-   is_service_running_by_cid $CONTAINER_ID $1
 
- }
 
- is_file_exists() {
 
-   is_file_exists_by_cid $CONTAINER_ID $1
 
- }
 
- wait_service() {
 
-   wait_service_by_cid $CONTAINER_ID $@
 
- }
 
- # generic functions
 
- get_container_ip_by_cid() {
 
-   local IP=$(docker inspect -f "{{ .NetworkSettings.IPAddress }}" $1)
 
-   echo "$IP"
 
- }
 
- start_containers_by_cid() {
 
-   for cid in "$@"
 
-   do
 
-     #disable outputs
 
-     docker start $cid &> /dev/null
 
-   done
 
- }
 
- stop_containers_by_cid() {
 
-   for cid in "$@"
 
-   do
 
-     #disable outputs
 
-     docker stop $cid &> /dev/null
 
-   done
 
- }
 
- remove_containers_by_cid() {
 
-   for cid in "$@"
 
-   do
 
-     #disable outputs
 
-     docker rm $cid &> /dev/null
 
-   done
 
- }
 
- clear_containers_by_cid() {
 
-   stop_containers_by_cid $@
 
-   remove_containers_by_cid $@
 
- }
 
- is_service_running_by_cid() {
 
-   docker exec $1 ps cax | grep $2  > /dev/null
 
- }
 
- is_file_exists_by_cid() {
 
-   docker exec $1 cat $2 > /dev/null 2>&1
 
- }
 
- wait_service_by_cid() {
 
-   cid=$1
 
-   # first wait image init end
 
-   while ! is_file_exists_by_cid $cid /container/run/state/startup-done
 
-   do
 
-     sleep 0.5
 
-   done
 
-   for service in "${@:2}"
 
-   do
 
-     # wait service
 
-     while ! is_service_running_by_cid $cid $service
 
-     do
 
-       sleep 0.5
 
-     done
 
-   done
 
- }
 
 
  |