Skip to content

Commit 77ce22a

Browse files
committed
Consolidate stop requests
1 parent a84c258 commit 77ce22a

1 file changed

Lines changed: 27 additions & 50 deletions

File tree

tests.sh

Lines changed: 27 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@ wait_for_ready() {
3232
echo "Container failed to start"; exit 1
3333
}
3434

35-
wait_for_removed() {
35+
stop_and_remove() {
36+
docker stop http-echo-tests 2>/dev/null || true
3637
for i in {1..20}; do
3738
if ! docker ps -aq --filter "name=http-echo-tests" | grep -q .; then
3839
return 0
@@ -76,7 +77,7 @@ pushd testarea
7677

7778
message " Cleaning up from previous test run "
7879
docker rm -f http-echo-tests 2>/dev/null || true
79-
wait_for_removed
80+
stop_and_remove
8081

8182
message " Start container normally "
8283
docker run -d --rm --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -203,8 +204,7 @@ else
203204
fi
204205

205206
message " Stop containers "
206-
docker stop http-echo-tests
207-
wait_for_removed
207+
stop_and_remove
208208

209209
message " Start container with max header size "
210210
docker run -d --rm -e MAX_HEADER_SIZE=1000 --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -235,8 +235,7 @@ else
235235
fi
236236

237237
message " Stop containers "
238-
docker stop http-echo-tests
239-
wait_for_removed
238+
stop_and_remove
240239

241240
message " Start container with different internal ports "
242241
docker run -d --rm -e HTTP_PORT=8888 -e HTTPS_PORT=9999 --name http-echo-tests -p 8080:8888 -p 8443:9999 -t mendhak/http-https-echo:testing
@@ -267,8 +266,7 @@ fi
267266

268267

269268
message " Stop containers "
270-
docker stop http-echo-tests
271-
wait_for_removed
269+
stop_and_remove
272270

273271
message " Start container with empty responses "
274272
docker run -d --rm -e ECHO_BACK_TO_CLIENT=false --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -285,8 +283,7 @@ else
285283
fi
286284

287285
message " Stop containers "
288-
docker stop http-echo-tests
289-
wait_for_removed
286+
stop_and_remove
290287

291288
message " Start container with response body only "
292289
docker run -d --rm --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -302,8 +299,7 @@ fi
302299

303300

304301
message " Stop containers "
305-
docker stop http-echo-tests
306-
wait_for_removed
302+
stop_and_remove
307303

308304
message " Start container with JWT_HEADER "
309305
docker run -d --rm -e JWT_HEADER=Authentication --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -321,8 +317,7 @@ else
321317
fi
322318

323319
message " Stop containers "
324-
docker stop http-echo-tests
325-
wait_for_removed
320+
stop_and_remove
326321

327322

328323
message " Start container with LOG_IGNORE_PATH (normal path)"
@@ -343,8 +338,7 @@ else
343338
fi
344339

345340
message " Stop containers "
346-
docker stop http-echo-tests
347-
wait_for_removed
341+
stop_and_remove
348342

349343
message " Start container with LOG_IGNORE_PATH (regex path)"
350344
docker run -d --rm -e LOG_IGNORE_PATH="^\/ping|^\/health|^\/metrics" --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -377,8 +371,7 @@ fi
377371

378372

379373
message " Stop containers "
380-
docker stop http-echo-tests
381-
wait_for_removed
374+
stop_and_remove
382375

383376
message " Start container with LOG_IGNORE_PATH (ignore all paths) "
384377
docker run -d --rm -e LOG_IGNORE_PATH=".*" --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -398,8 +391,7 @@ else
398391
fi
399392

400393
message " Stop containers "
401-
docker stop http-echo-tests
402-
wait_for_removed
394+
stop_and_remove
403395

404396

405397
message " Start container with DISABLE_REQUEST_LOGS "
@@ -417,8 +409,7 @@ else
417409
fi
418410

419411
message " Stop containers "
420-
docker stop http-echo-tests
421-
wait_for_removed
412+
stop_and_remove
422413

423414
message " Start container with CORS_CONFIG"
424415
docker run -d --rm \
@@ -439,8 +430,7 @@ else
439430
fi
440431

441432
message " Stop containers "
442-
docker stop http-echo-tests
443-
wait_for_removed
433+
stop_and_remove
444434

445435
message " Start container with LOG_WITHOUT_NEWLINE "
446436
docker run -d --rm -e LOG_WITHOUT_NEWLINE=1 --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -461,8 +451,7 @@ fi
461451

462452

463453
message " Stop containers "
464-
docker stop http-echo-tests
465-
wait_for_removed
454+
stop_and_remove
466455

467456
message " Check that container is running as a NON ROOT USER by default"
468457
docker run -d --name http-echo-tests --rm mendhak/http-https-echo:testing
@@ -478,8 +467,7 @@ else
478467
fi
479468

480469
message " Stop containers "
481-
docker stop http-echo-tests
482-
wait_for_removed
470+
stop_and_remove
483471

484472
message " Check that container is running as user different that the user defined in image"
485473
IMAGE_USER="$(docker image inspect mendhak/http-https-echo:testing -f '{{ .Config.User }}')"
@@ -500,8 +488,7 @@ else
500488
fi
501489

502490
message " Stop containers "
503-
docker stop http-echo-tests
504-
wait_for_removed
491+
stop_and_remove
505492

506493
message " Check that mTLS server responds with client certificate details"
507494
# Generate a new self signed cert locally
@@ -542,8 +529,7 @@ else
542529
fi
543530

544531
message " Stop containers "
545-
docker stop http-echo-tests
546-
wait_for_removed
532+
stop_and_remove
547533

548534
message " Check that SSL certificate and private key are loaded from custom location"
549535
cert_common_name="server.example.net"
@@ -576,8 +562,7 @@ else
576562
fi
577563

578564
message " Stop containers "
579-
docker stop http-echo-tests
580-
wait_for_removed
565+
stop_and_remove
581566

582567
message " Check that environment variables returned in response if enabled"
583568
docker run -d --rm -e ECHO_INCLUDE_ENV_VARS=1 --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -594,8 +579,7 @@ else
594579
fi
595580

596581
message " Stop containers "
597-
docker stop http-echo-tests
598-
wait_for_removed
582+
stop_and_remove
599583

600584
message " Check that environment variables are not present in response by default"
601585
docker run -d --rm --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -612,8 +596,7 @@ else
612596
fi
613597

614598
message " Stop containers "
615-
docker stop http-echo-tests
616-
wait_for_removed
599+
stop_and_remove
617600

618601
message " Start container with PROMETHEUS disabled "
619602
docker run -d --rm --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -634,8 +617,7 @@ else
634617
fi
635618

636619
message " Stop containers "
637-
docker stop http-echo-tests
638-
wait_for_removed
620+
stop_and_remove
639621

640622
message " Start container with PROMETHEUS enabled "
641623
docker run -d -e PROMETHEUS_ENABLED=true --rm --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -655,8 +637,7 @@ fi
655637

656638

657639
message " Stop containers "
658-
docker stop http-echo-tests
659-
wait_for_removed
640+
stop_and_remove
660641

661642
message " Start container with PRESERVE_HEADER_CASE enabled "
662643
docker run -d -e PRESERVE_HEADER_CASE=true --rm --name http-echo-tests -p 8080:8080 -p 8443:8443 -t mendhak/http-https-echo:testing
@@ -672,8 +653,7 @@ else
672653
fi
673654

674655
message " Stop containers "
675-
docker stop http-echo-tests
676-
wait_for_removed
656+
stop_and_remove
677657

678658
message " Start container with a custom response body from a file "
679659
echo "<h1>Hello World</h1>" > test.html
@@ -690,8 +670,7 @@ else
690670
fi
691671

692672
message " Stop containers "
693-
docker stop http-echo-tests
694-
wait_for_removed
673+
stop_and_remove
695674

696675
message " Start container with signed cookies support "
697676
# Set cookie secret for signing/verifying cookies
@@ -722,8 +701,7 @@ else
722701
fi
723702

724703
message " Stop containers "
725-
docker stop http-echo-tests
726-
wait_for_removed
704+
stop_and_remove
727705

728706

729707
message " Check that regular cookies are returned in response "
@@ -742,7 +720,6 @@ else
742720
fi
743721

744722
message " Stop containers "
745-
docker stop http-echo-tests
746-
wait_for_removed
723+
stop_and_remove
747724

748725
message "DONE"

0 commit comments

Comments
 (0)