name: "Decision Tests"
description: "Test decision values and nested response structures"
env:
base_url: "http://localhost:80"
timeout_ms: 10000
requests:
first_time_user:
body:
name: "First Time User"
email: "first-time-decision@example.com"
ip: "10.77.77.1"
user_agent: "DecisionTestAgent/1.0"
regular_order:
body:
name: "Regular Customer"
email: "regular-decision@example.com"
ip: "10.77.77.2"
user_agent: "RegularAgent/1.0"
ticket_count: 2
channel: "Regular"
group_order:
body:
name: "Group Coordinator"
email: "group-decision@example.com"
ip: "10.77.77.3"
user_agent: "GroupAgent/1.0"
channel: "Group"
group_name: "TestGroup"
ticket_count: 5
tests:
first_request_not_blocked:
description: "Verify first request from new user is not blocked"
endpoint: /api/v1/check-order
requests: [first_time_user]
assertions:
- query: "$[doc][cm][decision][blocked]"
expect: false
message: "First request should not be blocked"
decision_structure:
description: "Verify decision structure contains expected fields"
endpoint: /api/v1/check-order
requests: [regular_order]
assertions:
- query: "$[doc][cm][decision]?"
expect: true
message: "decision object must exist"
- query: "$[doc][cm][decision][blocked]?"
expect: true
message: "blocked field must exist in decision"
- query: "$[doc]['event.blocked']"
expect_type: boolean
message: "event.blocked must be boolean"
event_metadata:
description: "Verify event metadata is populated correctly"
endpoint: /api/v1/check-order
requests: [regular_order]
assertions:
- query: "$[doc]['service.name']"
expect: "order_reservation"
message: "service.name should be order_reservation"
- query: "$[doc]['event.type']"
expect: "test"
message: "event.type should be test"
ticket_count_preserved:
description: "Verify ticket count from request is preserved in reservation"
endpoint: /api/v1/check-order
requests: [regular_order]
assertions:
- query: "$[doc][cm][reservation][ticket_count]"
expect: 2
message: "ticket_count should be preserved"
channel_preserved:
description: "Verify channel is preserved in reservation"
endpoint: /api/v1/check-order
requests: [regular_order]
assertions:
- query: "$[doc][cm][reservation][channel]"
expect: "Regular"
message: "channel should be Regular"
group_order_fields:
description: "Verify group order fields are preserved"
endpoint: /api/v1/check-order
requests: [group_order]
assertions:
- query: "$[doc][cm][reservation][channel]"
expect: "Group"
message: "channel should be Group"
- query: "$[doc][cm][reservation][group_name]"
expect: "TestGroup"
message: "group_name should be preserved"
- query: "$[doc][cm][reservation][ticket_count]"
expect: 5
message: "ticket_count should be 5 for group order"
anomaly_detection_populated:
description: "Verify anomaly detection arrays are populated"
endpoint: /api/v1/check-order
requests: [first_time_user]
assertions:
- query: "$[doc][securely][anomaly_detection][normal].length()"
expect_gte: 0
message: "normal anomalies array should exist"
- query: "$[doc][securely][anomaly_detection][abnormal].length()"
expect_gte: 0
message: "abnormal anomalies array should exist"