Add tests for nginx.conf directives #1
@ -1,4 +1,4 @@
|
||||
FROM openresty/openresty:1.27.1.2-0-bookworm-buildpack
|
||||
FROM openresty/openresty:bookworm-buildpack
|
||||
|
||||
WORKDIR /opt/app
|
||||
|
||||
@ -12,6 +12,7 @@ RUN apt-get update && apt-get install -y \
|
||||
|
||||
RUN luarocks install sitegen
|
||||
RUN luarocks install busted
|
||||
RUN luarocks install luajit-curl
|
||||
RUN luarocks install inotify INOTIFY_INCDIR=/usr/include/x86_64-linux-gnu/
|
||||
|
||||
CMD ["sh", "-c", "openresty -p `pwd` -g 'daemon off;'"]
|
||||
|
9
Makefile
9
Makefile
@ -12,3 +12,12 @@ lint:
|
||||
|
||||
test:
|
||||
./test.sh
|
||||
|
||||
test-server:
|
||||
docker run --rm -t -v $(PWD):/opt/app -p 8080:8080 \
|
||||
--add-host=miti.sh=127.0.0.1 \
|
||||
--add-host=webdevcat.me=127.0.0.1 \
|
||||
$(image)
|
||||
|
||||
busted:
|
||||
docker run --rm -t -w /opt/app -v $(PWD):/opt/app $(image) busted
|
||||
|
@ -82,6 +82,10 @@ example:
|
||||
|
||||
$ pygmentize -S default -f html
|
||||
|
||||
### run tests
|
||||
|
||||
$ make test
|
||||
|
||||
## gotchas
|
||||
|
||||
### What is error `cosmo failed: [string "..."]:62: cannot resume dead coroutine`?
|
||||
|
31
spec/routes_spec.moon
Normal file
31
spec/routes_spec.moon
Normal file
@ -0,0 +1,31 @@
|
||||
http = require "luajit-curl-helper.http"
|
||||
|
||||
describe "routes", ->
|
||||
it "loads miti.sh", ->
|
||||
request = http.init "http://miti.sh:8080"
|
||||
st = request\perform!
|
||||
|
||||
error request\lastError! if not st
|
||||
|
||||
status_code = request\statusCode!
|
||||
status_message = request\statusMessage!
|
||||
|
||||
assert.same status_code, 200
|
||||
assert.same status_message, "OK"
|
||||
|
||||
it "redirects webdevcat.me to miti.sh", ->
|
||||
request = http.init "http://webdevcat.me:8080"
|
||||
st = request\perform!
|
||||
|
||||
error request\lastError! if not st
|
||||
|
||||
status_code = request\statusCode!
|
||||
status_message = request\statusMessage!
|
||||
header = request\header!
|
||||
|
||||
assert.same status_code, 301
|
||||
assert.same status_message, "Moved Permanently"
|
||||
assert.same header.Location, "http://miti.sh:8080/"
|
||||
|
||||
-- body = request\body!
|
||||
-- print "body", body
|
22
test.sh
22
test.sh
@ -15,19 +15,21 @@ echo "Test container started"
|
||||
# docker exec -t $container_id curl http://miti.sh:8080
|
||||
# docker exec -t $container_id curl -v http://webdevcat.me:8080
|
||||
|
||||
echo "redirects webdevcat.me to miti.sh"
|
||||
docker exec -t $container_id busted
|
||||
|
||||
response=$(docker exec -t $container_id curl -so /dev/null \
|
||||
-w "%{http_code} %{redirect_url}" http://webdevcat.me:8080)
|
||||
# echo "redirects webdevcat.me to miti.sh"
|
||||
|
||||
expected="301 http://miti.sh:8080/"
|
||||
# response=$(docker exec -t $container_id curl -so /dev/null \
|
||||
# -w "%{http_code} %{redirect_url}" http://webdevcat.me:8080)
|
||||
|
||||
if [[ $response != $expected ]]; then
|
||||
echo "TEST FAILED"
|
||||
printf "expected: $expected\ngot: $response\n"
|
||||
else
|
||||
echo "TEST PASSED"
|
||||
fi
|
||||
# expected="301 http://miti.sh:8080/"
|
||||
|
||||
# if [[ $response != $expected ]]; then
|
||||
# echo "TEST FAILED"
|
||||
# printf "expected: $expected\ngot: $response\n"
|
||||
# else
|
||||
# echo "TEST PASSED"
|
||||
# fi
|
||||
|
||||
echo "Stopping test container"
|
||||
docker exec $container_id openresty -p /opt/app -s stop
|
||||
|
Loading…
x
Reference in New Issue
Block a user