This commit is contained in:
Martin Slachta
2026-06-11 19:03:29 +02:00
commit 0d829845c4
150 changed files with 38582 additions and 0 deletions
+172
View File
@@ -0,0 +1,172 @@
# Create object with timetable
POST http://localhost/wordpress/wp-json/reservations/v1/object
{
"name": "TestObject1",
"timetable": {
"block_len": 30,
"block_capacity": 2
}
}
HTTP 200
[Captures]
object_id: jsonpath "$[0]"
POST http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/available
{
"timetable_id": {{object_id}},
"first_date": "2025-08-31",
"start": "8:00",
"end": "10:00",
"is_repeating": true,
"requires_confirmation": false,
"repeat_period": 7,
"repeat_times": 0,
"monday": true,
"tuesday": false,
"wednesday": true,
"thursday": false,
"friday": true,
"saturday": false,
"sunday": true
}
HTTP 200
[Asserts]
jsonpath "$" count == 4
GET http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation/occupancy?date=2025-08-31
HTTP 200
[Asserts]
jsonpath "$.occupancy" count == 4
jsonpath "$.occupancy[0]" == 0
jsonpath "$.occupancy[1]" == 0
jsonpath "$.occupancy[2]" == 0
jsonpath "$.occupancy[3]" == 0
POST http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation
{
"timetable_id": {{object_id}},
"date": "2025-08-31",
"email": "test@test",
"full_name": "Test Test",
"phone": "123 456 789",
"reservations": [
{
"start_block_idx": 16,
"num_blocks": 2
}
]
}
HTTP 200
POST http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation
{
"timetable_id": {{object_id}},
"date": "2025-09-07",
"email": "test@test",
"full_name": "Test Test",
"phone": "123 456 789",
"reservations": [
{
"start_block_idx": 16,
"num_blocks": 2
}
]
}
HTTP 200
# not available time
POST http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation
{
"timetable_id": {{object_id}},
"date": "2025-09-06",
"email": "test@test",
"full_name": "Test Test",
"phone": "123 456 789",
"reservations": [
{
"start_block_idx": 16,
"num_blocks": 2
}
]
}
HTTP 400
# Availabel time, still has capacity
POST http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation
{
"timetable_id": {{object_id}},
"date": "2025-09-07",
"email": "test@test",
"full_name": "Test Test",
"phone": "123 456 789",
"reservations": [
{
"start_block_idx": 17,
"num_blocks": 2
}
]
}
HTTP 200
GET http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation/occupancy?date=2025-09-07
HTTP 200
[Asserts]
jsonpath "$.occupancy" count == 4
jsonpath "$.occupancy[0]" == 1
jsonpath "$.occupancy[1]" == 2
jsonpath "$.occupancy[2]" == 1
jsonpath "$.occupancy[3]" == 0
POST http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation
{
"timetable_id": {{object_id}},
"date": "2025-09-07",
"email": "test@test",
"full_name": "Test Test",
"phone": "123 456 789",
"reservations": [
{
"start_block_idx": 18,
"num_blocks": 1
}
]
}
HTTP 200
POST http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation
{
"timetable_id": {{object_id}},
"date": "2025-09-07",
"email": "test@test",
"full_name": "Test Test",
"phone": "123 456 789",
"reservations": [
{
"start_block_idx": 18,
"num_blocks": 1
}
]
}
HTTP 400
POST http://localhost/wordpress/wp-json/reservations/v1/object/{{object_id}}/timetable/reservation
{
"timetable_id": {{object_id}},
"date": "2025-09-07",
"email": "test@test",
"full_name": "Test Test",
"phone": "123 456 789",
"reservations": [
{
"start_block_idx": 16,
"num_blocks": 1
}
]
}
HTTP 400