| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 | setup() {  IMAGE_NAME="$NAME:$VERSION"}# function relative to the current container / imagebuild_image() {  #disable outputs  docker build -t $IMAGE_NAME $BATS_TEST_DIRNAME/../image &> /dev/null}run_image() {  CONTAINER_ID=$(docker run $@ -d $IMAGE_NAME --copy-service -c "/container/service/slapd/test.sh" $EXTRA_DOCKER_RUN_FLAGS)  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}wait_process() {  wait_process_by_cid $CONTAINER_ID $@}check_container() {  # "Status" = "exited", and "ExitCode" != 0,  local CSTAT=$(docker inspect -f "{{ .State.Status }} {{ .State.ExitCode }}" $CONTAINER_ID)  echo "$CSTAT"}# generic functionsget_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 $@}wait_process_by_cid() {  cid=$1  docker exec $cid /container/tool/wait-process ${@:2}}
 |