Add gallery test and fix nginx socket

This commit is contained in:
Ophir LOJKINE
2026-06-02 12:08:51 +02:00
committed by Ophir LOJKINE
parent 379eab38ef
commit ee2b0aecc8
2 changed files with 71 additions and 2 deletions
@@ -1 +0,0 @@
../../test.hurl
@@ -0,0 +1,61 @@
# Public gallery is reachable without a session.
GET http://localhost:8080
HTTP 200
[Asserts]
header "Content-Type" contains "text/html"
body contains "My image gallery"
body contains "Your gallery is empty"
body contains "Upload a new image"
body not contains "An error occurred"
# Upload form is protected.
GET http://localhost:8080/upload_form.sql
HTTP 302
[Asserts]
header "Location" == "/login.sql"
GET http://localhost:8080/login.sql
HTTP 200
[Asserts]
body contains "Login"
body contains "Username"
body contains "Password"
body not contains "An error occurred"
# Demo credentials from the example migration: admin/admin.
POST http://localhost:8080/create_session.sql
[Form]
Username: admin
Password: admin
HTTP 302
[Asserts]
header "Set-Cookie" contains "session_token="
header "Location" == "/"
# Hurl's cookie store reuses the session_token set above.
GET http://localhost:8080/upload_form.sql
HTTP 200
[Asserts]
body contains "Upload a new image"
body contains "Title"
body contains "Description"
body contains "Image"
body not contains "An error occurred"
POST http://localhost:8080/upload.sql
[Multipart]
Title: Hurl test image
Description: Uploaded by Hurl
Image: file,screenshots/upload.png; image/png
HTTP 302
[Asserts]
header "Location" matches "^/\\?created_id=\\d+$"
GET http://localhost:8080{{location}}
HTTP 200
[Asserts]
body contains "Hurl test image"
body contains "Uploaded by Hurl"
body contains "/images/"
body not contains "Your gallery is empty"
body not contains "An error occurred"
+10 -1
View File
@@ -1,4 +1,10 @@
services:
init-sqlpage-socket:
image: alpine
volumes:
- sqlpage_socket:/tmp/sqlpage
command: ["chown", "1000:1000", "/tmp/sqlpage"]
sqlpage:
image: lovasoa/sqlpage:main
volumes:
@@ -9,7 +15,10 @@ services:
- DATABASE_URL=mysql://sqlpage:sqlpage_password@mysql:3306/sqlpage_db
- SQLPAGE_UNIX_SOCKET=/tmp/sqlpage/sqlpage.sock
depends_on:
- mysql
init-sqlpage-socket:
condition: service_completed_successfully
mysql:
condition: service_started
nginx:
image: nginx:alpine