Space-separated words use implicit AND. Press / to focus the search bar. Operators &&||!! activate advanced mode; without them, legacy tag expressions (@a and @b or not @c) are also supported. dep:, duration: and is: always narrow the search: they combine with the rest of it by AND, and can be negated with !! or not. Inside a group that !! or not negates, one is read as text, and the search bar is marked.
Status
Duration โฅseconds
Happy paths
Tags
Dependencies
All 212 scenarios, 73 featuresAll 212 scenarios
featuresscenarios
Payloads
No scenarios match the filters.
Scenarios
Steps
Duration
Feature
Total
Passed
Failed
Skipped
Total
Passed
Failed
Skipped
Total
Avg
Longest
10
10
0
0
0
0
0
0
993ms
99ms
854ms
4
4
0
0
0
0
0
0
1s
266ms
973ms
1
1
0
0
18
18
0
0
59ms
59ms
59ms
8
8
0
0
0
0
0
0
321ms
40ms
118ms
1
1
0
0
0
0
0
0
32ms
32ms
32ms
5
5
0
0
0
0
0
0
568ms
113ms
531ms
2
2
0
0
0
0
0
0
100ms
50ms
85ms
1
1
0
0
0
0
0
0
4ms
4ms
4ms
4
4
0
0
0
0
0
0
36ms
9ms
17ms
2
2
0
0
0
0
0
0
13ms
6ms
8ms
5
5
0
0
0
0
0
0
360ms
72ms
302ms
6
6
0
0
0
0
0
0
114ms
19ms
61ms
2
2
0
0
0
0
0
0
61ms
30ms
32ms
3
3
0
0
0
0
0
0
55ms
18ms
47ms
2
2
0
0
0
0
0
0
50ms
25ms
41ms
2
2
0
0
0
0
0
0
34ms
17ms
31ms
2
2
0
0
0
0
0
0
316ms
158ms
193ms
1
1
0
0
0
0
0
0
131ms
131ms
131ms
2
2
0
0
0
0
0
0
60ms
30ms
34ms
1
1
0
0
0
0
0
0
13ms
13ms
13ms
1
1
0
0
0
0
0
0
10ms
10ms
10ms
1
1
0
0
0
0
0
0
7ms
7ms
7ms
1
1
0
0
0
0
0
0
214ms
214ms
214ms
2
2
0
0
0
0
0
0
26ms
13ms
21ms
2
2
0
0
0
0
0
0
310ms
155ms
200ms
1
1
0
0
0
0
0
0
7ms
7ms
7ms
3
3
0
0
0
0
0
0
19ms
6ms
8ms
5
5
0
0
0
0
0
0
474ms
94ms
394ms
6
6
0
0
0
0
0
0
114ms
19ms
60ms
6
6
0
0
0
0
0
0
237ms
39ms
65ms
1
1
0
0
0
0
0
0
36ms
36ms
36ms
1
1
0
0
0
0
0
0
58ms
58ms
58ms
1
1
0
0
0
0
0
0
30ms
30ms
30ms
3
3
0
0
0
0
0
0
1s
665ms
1s
1
1
0
0
0
0
0
0
110ms
110ms
110ms
2
2
0
0
0
0
0
0
332ms
166ms
184ms
1
1
0
0
0
0
0
0
26ms
26ms
26ms
2
2
0
0
0
0
0
0
34ms
17ms
30ms
1
1
0
0
0
0
0
0
1s
1s
1s
4
4
0
0
0
0
0
0
323ms
80ms
103ms
1
1
0
0
0
0
0
0
132ms
132ms
132ms
11
11
0
0
0
0
0
0
246ms
22ms
41ms
1
1
0
0
0
0
0
0
3ms
3ms
3ms
6
6
0
0
0
0
0
0
20ms
3ms
7ms
5
5
0
0
0
0
0
0
112ms
22ms
65ms
3
3
0
0
0
0
0
0
3ms
1ms
2ms
8
8
0
0
0
0
0
0
36ms
4ms
16ms
1
1
0
0
0
0
0
0
20ms
20ms
20ms
6
6
0
0
0
0
0
0
96ms
16ms
58ms
1
1
0
0
0
0
0
0
757ms
757ms
757ms
1
1
0
0
0
0
0
0
38ms
38ms
38ms
1
1
0
0
0
0
0
0
58ms
58ms
58ms
2
2
0
0
0
0
0
0
49ms
24ms
42ms
3
3
0
0
0
0
0
0
142ms
47ms
60ms
5
5
0
0
0
0
0
0
161ms
32ms
102ms
1
1
0
0
0
0
0
0
23ms
23ms
23ms
1
1
0
0
0
0
0
0
172ms
172ms
172ms
1
1
0
0
0
0
0
0
8ms
8ms
8ms
2
2
0
0
0
0
0
0
111ms
55ms
57ms
1
1
0
0
0
0
0
0
14ms
14ms
14ms
2
2
0
0
0
0
0
0
55ms
27ms
50ms
2
2
0
0
0
0
0
0
58ms
29ms
48ms
1
1
0
0
0
0
0
0
33ms
33ms
33ms
1
1
0
0
0
0
0
0
126ms
126ms
126ms
1
1
0
0
0
0
0
0
234ms
234ms
234ms
4
4
0
0
0
0
0
0
109ms
27ms
56ms
2
2
0
0
0
0
0
0
11ms
5ms
8ms
2
2
0
0
0
0
0
0
226ms
113ms
122ms
2
2
0
0
0
0
0
0
41ms
20ms
31ms
8
8
0
0
0
0
0
0
37ms
4ms
17ms
6
6
0
0
0
0
0
0
12ms
2ms
6ms
3
3
0
0
0
0
0
0
3ms
1ms
2ms
8
8
0
0
0
0
0
0
72ms
9ms
49ms
Apple Cinnamon Muffins Creation TestsValid apple cinnamon muffin request should return a fresh batch Happy Path36ms🔗Diagrams
This scenario:Payloads
Different muffin recipes should produce the expected batch 3/3 passed887ms ยท 737ms warm-up🔗
Muffin request with invalid field should return bad request 6/6 passed69ms🔗
#
Input Parameters
Status
Duration
Field
Value
Reason
Expected Error
Expected Status
1
Apples
Apples is required
'Apples' is required.
Bad Request
Passed
3ms
2
Cinnamon
Cinnamon is required
'Cinnamon' is required.
Bad Request
Passed
1ms
3
Cinnamon
<script>alert('xss')</script>
XSS in cinnamon
Cinnamon contains potentially dangerous content.
Bad Request
Passed
2ms
4
Eggs
Eggs is required
'Eggs' is required.
Bad Request
Passed
1ms
5
Flour
Flour is required
'Flour' is required.
Bad Request
Passed
58ms
6
Milk
Milk is required
'Milk' is required.
Bad Request
Passed
1ms
Diagrams
This scenario:Payloads
Audit Logs Filtering TestsAudit logs should be filterable by entity id 973ms ยท 906ms warm-up🔗Diagrams
This scenario:Payloads
Audit logs should be filterable by entity type 45ms🔗Diagrams
This scenario:Payloads
Audit logs should be returned in descending timestamp order 36ms🔗Diagrams
This scenario:Payloads
Filtering audit logs by a non existent entity type should return an empty collection 9ms🔗Diagrams
This scenario:Payloads
Audit Logs Retrieval TestsCreating an order should produce a retrievable audit log entry Happy Path59ms🔗Steps✓GivenA pancake batch has been created(20ms)
✓Pancake steps response message status code should be Created(0ms)
✓Response content is valid json should be true(0ms)
✓Pancake steps response should not be null(0ms)
✓Pancake steps response batch id should not be empty(0ms)
✓AndAn order has been created for the batch(12ms)
✓Order steps response message status code should be Created(0ms)
✓Response content is valid json should be true(0ms)
✓Order steps response should not be null(0ms)
✓Order steps response order id should not be empty(0ms)
✓WhenThe audit logs are retrieved(13ms)
✓ThenThe response contains the order creation entry(6ms)
✓Audit steps response message status code should be OK(0ms)
✓Response content is valid json should be true(0ms)
✓Audit steps response should contain [ a => a.Action == AuditLogDefaults.CreatedAction && a.EntityType == AuditLogDefaults.OrderEntityType && a.Details.Contains('TestCustomer_2723986003731679193') ](0ms)
✓AndThe downstream services received requests(2ms)
✓Requests should contain [ r => r.RequestUri.AbsolutePath == "/milk" && r.Method == HttpMethod.Get ](0ms)
✓Requests should contain [ r => r.RequestUri.AbsolutePath == "/prepare" && r.Method == HttpMethod.Post ](0ms)
Diagrams
This scenario:Payloads
Chef Notes Management TestsCreating a chef note should return the created note Happy Path72ms ยท 57ms warm-up🔗Diagrams
This scenario:Payloads
Creating a note with missing note text should return bad request 19ms🔗Diagrams
This scenario:Payloads
Creating a note with missing recipe name should return bad request 4ms🔗Diagrams
This scenario:Payloads
Listing notes by recipe should return matching notes 118ms🔗Diagrams
This scenario:Payloads
Retrieving a non existent note should return not found 23ms🔗Diagrams
This scenario:Payloads
Retrieving an existing note by id should return the note 25ms🔗Diagrams
This scenario:Payloads
Updating a non existent note should return not found 36ms🔗Diagrams
This scenario:Payloads
Updating an existing note should return the updated note 22ms🔗Diagrams
Customer Preferences Management TestsSaving customer preferences should return the saved preferences Happy Path8ms🔗Diagrams
This scenario:Payloads
Retrieving existing customer preferences should return the preferences 531ms ยท 512ms warm-up🔗Diagrams
This scenario:Payloads
Retrieving non existent customer preferences should return not found 8ms🔗Diagrams
This scenario:Payloads
Saving customer preferences with missing customer name should return bad request 4ms🔗Diagrams
This scenario:Payloads
Updating customer preferences should return the updated preferences 14ms🔗Diagrams
This scenario:Payloads
Daily Specials Idempotency TestsSame order with different idempotency keys should return different confirmations 85ms ยท 58ms warm-up🔗Diagrams
This scenario:Payloads
Same order with same idempotency key should return same confirmation 14ms🔗Diagrams
This scenario:Payloads
Daily Specials Not Found TestsOrdering non existent daily special should return not found 4ms🔗Diagrams
This scenario:Payloads
Daily Specials Ordering TestsValid daily special order should return a confirmation Happy Path5ms🔗Diagrams
This scenario:Payloads
Daily specials endpoint should return all available specials 17ms🔗Diagrams
This scenario:Payloads
Ordering daily special beyond threshold should return conflict 6ms🔗Diagrams
This scenario:Payloads
Remaining quantity should decrease after each order 6ms🔗Diagrams
This scenario:Payloads
Daily Specials Validation TestsDaily special order with invalid field should return bad request 2/2 passed13ms🔗
#
Input Parameters
Status
Duration
Field
Value
Reason
Expected Error
Expected Status
1
Quantity
0
Quantity must be greater than zero
Quantity must be greater than zero.
Bad Request
Passed
5ms
2
SpecialId
null
Special ID is required
'Special Id' is required.
Bad Request
Passed
8ms
Diagrams
This scenario:Payloads
Equipment Readings Monitoring TestsRecording an equipment reading should return the created record Happy Path10ms🔗Diagrams
This scenario:Payloads
Deleting a reading should remove it from the list 302ms ยท 189ms warm-up🔗Diagrams
This scenario:Payloads
Listing readings by equipment should return matching records 36ms🔗Diagrams
This scenario:Payloads
Recording a reading with missing metric should return bad request 4ms🔗Diagrams
This scenario:Payloads
Recording a reading with zero value should return bad request 6ms🔗Diagrams
This scenario:Payloads
Feedback Management TestsSubmitting feedback should return the created feedback Happy Path9ms🔗Diagrams
This scenario:Payloads
Listing feedback for an order should return the feedback 61ms🔗Diagrams
This scenario:Payloads
Retrieving existing feedback by id should return the feedback 31ms🔗Diagrams
This scenario:Payloads
Retrieving non existent feedback should return not found 5ms🔗Diagrams
This scenario:Payloads
Submitting feedback with invalid rating should return bad request 3ms🔗Diagrams
This scenario:Payloads
Submitting feedback with missing customer name should return bad request 2ms🔗Diagrams
This scenario:Payloads
Grpc Order Status TestsOrder status via grpc should return order details Happy Path32ms🔗Diagrams
This scenario:Payloads
Order status for non existent order should return not found 28ms🔗Diagrams
This scenario:Payloads
Grpc Recipe Summary TestsPancake recipe summary should return correct data Happy Path47ms🔗Diagrams
This scenario:Payloads
Waffle recipe summary should return correct data Happy Path4ms🔗Diagrams
This scenario:Payloads
Unknown recipe type should return zero batches 3ms🔗Diagrams
This scenario:Payloads
Grpc Stream Order Updates TestsStreaming order updates should return the current status Happy Path41ms🔗Diagrams
This scenario:Payloads
Streaming updates for non existent order should return not found 9ms🔗Diagrams
This scenario:Payloads
Infrastructure Correlation Id TestsRequest with correlation id should return same id in response Happy Path31ms🔗Diagrams
This scenario:Payloads
Request without correlation id should have one generated in response 3ms🔗Diagrams
This scenario:Payloads
Infrastructure Degraded Health Check TestsHealth check should report degraded when cow service is unavailable 193ms🔗Diagrams
This scenario:Payloads
Health check should report degraded when multiple downstream services are unavailable 123ms🔗Diagrams
This scenario:Payloads
Infrastructure Downstream Error Health Check TestsHealth check should report degraded when downstream service returns non success status 131ms🔗Diagrams
This scenario:Payloads
Infrastructure Header Propagation TestsRequest with correlation id should forward it to cow service Happy Path34ms🔗Diagrams
This scenario:Payloads
Request with correlation id should forward it to supplier service 25ms🔗Diagrams
This scenario:Payloads
Infrastructure Health Check Detail TestsHealth check response should include description and data for each entry 13ms🔗Diagrams
This scenario:Payloads
Infrastructure Health Check TestsHealth check endpoint should return healthy status with all dependency details Happy Path10ms🔗Diagrams
This scenario:Payloads
Infrastructure Heartbeat TestsHeartbeat endpoint should return a running message Happy Path7ms🔗Diagrams
This scenario:Payloads
Infrastructure Telemetry TestsCreating an order should emit a structured log entry Happy Path214ms🔗Diagrams
This scenario:Payloads
Ingredients Goat Milk Downstream Failure TestsRequesting goat milk when goat service returns invalid response should return bad gateway 21ms🔗Diagrams
This scenario:Payloads
Requesting goat milk when goat service unavailable should return bad gateway 5ms🔗Diagrams
This scenario:Payloads
Ingredients Goat Milk Feature Flag TestsGoat milk endpoint should return fresh goat milk when feature is enabled 110ms🔗Diagrams
This scenario:Payloads
Goat milk endpoint should return not found when feature is disabled 200ms🔗Diagrams
This scenario:Payloads
Ingredients Goat Milk Sourcing TestsGoat milk endpoint should return fresh goat milk from goat service Happy Path7ms🔗Diagrams
This scenario:Payloads
Ingredients Milk Downstream Failure TestsRequesting milk when cow service returns invalid response should return bad gateway 8ms🔗Diagrams
This scenario:Payloads
Requesting milk when cow service times out should return bad gateway 6ms🔗Diagrams
This scenario:Payloads
Requesting milk when cow service unavailable should return bad gateway 4ms🔗Diagrams
This scenario:Payloads
Ingredient Usage Analytics TestsRecording ingredient usage should return the created record Happy Path9ms🔗Diagrams
This scenario:Payloads
Getting usage summary should return aggregated data 394ms ยท 114ms warm-up🔗Diagrams
This scenario:Payloads
Listing usage by ingredient should return matching records 64ms🔗Diagrams
This scenario:Payloads
Recording usage with missing ingredient name should return bad request 3ms🔗Diagrams
This scenario:Payloads
Recording usage with zero quantity should return bad request 3ms🔗Diagrams
This scenario:Payloads
Ingredient Waste Tracking TestsRecording ingredient waste should return the created record Happy Path9ms🔗Diagrams
This scenario:Payloads
Deleting a waste record should return no content 60ms🔗Diagrams
This scenario:Payloads
Listing waste by recipe should return matching records 33ms🔗Diagrams
This scenario:Payloads
Recording waste with missing ingredient name should return bad request 3ms🔗Diagrams
This scenario:Payloads
Recording waste with missing reason should return bad request 3ms🔗Diagrams
This scenario:Payloads
Recording waste with zero quantity should return bad request 3ms🔗Diagrams
This scenario:Payloads
Inventory Management TestsAdding a new inventory item should return the created item Happy Path65ms ยท 54ms warm-up🔗Diagrams
This scenario:Payloads
Deleting an inventory item should return no content 61ms🔗Diagrams
This scenario:Payloads
Listing all inventory items should return all items 42ms🔗Diagrams
This scenario:Payloads
Retrieving a non existent inventory item should return not found 15ms🔗Diagrams
This scenario:Payloads
Retrieving an existing inventory item should return the item 12ms🔗Diagrams
This scenario:Payloads
Updating an inventory item should return the updated item 39ms🔗Diagrams
This scenario:Payloads
Menu Availability TestsMenu endpoint should return all menu items with availability Happy Path36ms🔗Diagrams
This scenario:Payloads
Menu Caching TestsMenu should return cached results on subsequent requests 58ms🔗Diagrams
This scenario:Payloads
Menu Downstream Failure TestsRequesting menu when supplier service unavailable should mark items as unavailable 30ms🔗Diagrams
This scenario:Payloads
Orders Breakfast Order TestsValid order should be created and an event published Happy Path630ms🔗Diagrams
This scenario:Payloads
Creating an order should produce an audit log entry and events 1.3s🔗Diagrams
This scenario:Payloads
Creating an order should write an outbox message that gets processed 87ms🔗Diagrams
This scenario:Payloads
Orders Complete Lifecycle TestsOrder should progress through all status transitions to completion Happy Path110ms🔗Diagrams
This scenario:Payloads
Orders Cross Field Validation TestsOrder at maximum items per order should be accepted 184ms🔗Diagrams
This scenario:Payloads
Order exceeding maximum items per order should be rejected 148ms🔗Diagrams
This scenario:Payloads
Orders Kitchen Service Failure TestsCreating an order when kitchen service returns error should still create the order 26ms🔗Diagrams
This scenario:Payloads
Orders Order Retrieval TestsPreviously created order should be retrievable by id Happy Path30ms🔗Diagrams
This scenario:Payloads
Retrieving a non existent order should return not found 3ms🔗Diagrams
This scenario:Payloads
Orders Outbox Retry Exhaustion TestsOutbox message should transition to failed after exhausting retries 1.0s🔗Sequence Diagrams
This scenario:Payloads
Orders Pagination TestsListing orders should return a paginated response Happy Path103ms🔗Diagrams
This scenario:Payloads
Listing orders when none exist should return an empty page 19ms🔗Diagrams
This scenario:Payloads
Listing orders with small page size should limit results 98ms🔗Diagrams
This scenario:Payloads
Requesting second page should return different orders 101ms🔗Diagrams
This scenario:Payloads
Orders Rate Limiting TestsExceeding rate limit should return too many requests 132ms🔗Diagrams
This scenario:Payloads
Orders Status Transition TestsInvalid status transition should return conflict 7/7 passed161ms🔗
#
Input Parameters
Status
Duration
From Status
To Status
1
Cancelled
Preparing
Passed
16ms
2
Cancelled
Ready
Passed
17ms
3
Completed
Preparing
Passed
21ms
4
Created
Completed
Passed
16ms
5
Created
Ready
Passed
27ms
6
Preparing
Cancelled
Passed
41ms
7
Ready
Preparing
Passed
21ms
Diagrams
This scenario:Payloads
Valid status transition should update the order 4/4 passed84ms🔗
#
Input Parameters
Status
Duration
From Status
To Status
1
Created
Cancelled
Passed
16ms
2
Created
Preparing
Passed
20ms
3
Preparing
Ready
Passed
18ms
4
Ready
Completed
Passed
28ms
Diagrams
This scenario:Payloads
Orders Status Update Not Found TestsUpdating status of non existent order should return not found 3ms🔗Diagrams
This scenario:Payloads
Orders Validation TestsOrder status update with invalid field should return bad request 1/1 passed6ms🔗
#
Input Parameters
Status
Duration
Field
Value
Reason
Expected Error
Expected Status
1
Status
Status is required
'Status' is required.
Bad Request
Passed
6ms
Diagrams
This scenario:Payloads
Order with invalid field should return bad request 5/5 passed13ms🔗
#
Input Parameters
Status
Duration
Field
Value
Reason
Expected Error
Expected Status
1
CustomerName
Customer name is required
'Customer Name' is required.
Bad Request
Passed
7ms
2
Items
null
At least one item is required
The Items field is required.
Bad Request
Passed
1ms
3
Items[0].BatchId
null
Batch ID is required
'Batch Id' is required.
Bad Request
Passed
1ms
4
Items[0].ItemType
Item type is required
'Item Type' is required.
Bad Request
Passed
1ms
5
Items[0].Quantity
0
Quantity must be greater than zero
Quantity must be greater than zero.
Bad Request
Passed
1ms
Diagrams
This scenario:Payloads
Order Timings Analytics TestsRecording an order timing should return the created record Happy Path6ms🔗Diagrams
This scenario:Payloads
Getting the timing summary should return aggregated data 65ms🔗Diagrams
This scenario:Payloads
Listing timings by station should return matching records 33ms🔗Diagrams
This scenario:Payloads
Recording a timing with missing station should return bad request 3ms🔗Diagrams
This scenario:Payloads
Recording a timing with zero prep seconds should return bad request 2ms🔗Diagrams
This scenario:Payloads
Pancakes Content Negotiation TestsRequest with unsupported content type should return unsupported media type 3/3 passed3ms🔗
#
Input Parameters
Status
Duration
Content Type
1
application/xml
Passed
0ms
2
text/html
Passed
0ms
3
text/plain
Passed
2ms
Diagrams
This scenario:Payloads
Pancakes Creation TestsValid pancake request with all ingredients should return a fresh batch Happy Path16ms🔗Diagrams
This scenario:Payloads
Pancake request with invalid ingredient should return bad request 6/6 passed11ms🔗
#
Input Parameters
Status
Duration
Field
Value
Reason
Expected Error
Expected Status
1
Eggs
Eggs is required
'Eggs' is required.
Bad Request
Passed
1ms
2
Eggs
javascript:void(0)
XSS in eggs
Eggs contains potentially dangerous content.
Bad Request
Passed
0ms
3
Flour
Flour is required
'Flour' is required.
Bad Request
Passed
1ms
4
Flour
<img onerror=x>
XSS in flour
Flour contains potentially dangerous content.
Bad Request
Passed
1ms
5
Milk
Milk is required
'Milk' is required.
Bad Request
Passed
5ms
6
Milk
<script>alert</script>
XSS in milk
Milk contains potentially dangerous content.
Bad Request
Passed
1ms
Diagrams
This scenario:Payloads
Pancake request with more toppings than allowed should return bad request 9ms🔗Diagrams
Staff Management TestsAdding a new staff member should return the created member Happy Path56ms🔗Diagrams
This scenario:Payloads
Adding a staff member with an invalid role should return a bad request response 3ms🔗Diagrams
This scenario:Payloads
Deleting a staff member should return no content 27ms🔗Diagrams
This scenario:Payloads
Retrieving an existing staff member should return the member 20ms🔗Diagrams
This scenario:Payloads
Toppings Deletion TestsDeleting an existing topping should return no content Happy Path3ms🔗Diagrams
This scenario:Payloads
Deleting a non existent topping should return not found 8ms🔗Diagrams
This scenario:Payloads
Toppings Feature Flag TestsToppings should exclude raspberries when feature flag is disabled 104ms🔗Diagrams
This scenario:Payloads
Toppings should include raspberries when feature flag is enabled 122ms🔗Diagrams
This scenario:Payloads
Toppings Management TestsToppings endpoint should return all available toppings Happy Path9ms🔗Diagrams
This scenario:Payloads
Adding a new topping should return the created topping 31ms🔗Diagrams
This scenario:Payloads
Toppings Update TestsUpdating an existing topping should return the updated topping Happy Path7ms🔗Diagrams
This scenario:Payloads
Update topping with invalid or dangerous input should return bad request 6/6 passed24ms🔗
#
Input Parameters
Status
Duration
Field
Value
Reason
Expected Error
Expected Status
1
Category
Category is required
'Category' is required.
Bad Request
Passed
1ms
2
Category
<script>alert('xss')</script>
Script tag in category
Category contains potentially dangerous content.
Bad Request
Passed
1ms
3
Category
javascript:alert(1)
Javascript protocol
Category contains potentially dangerous content.
Bad Request
Passed
1ms
4
Name
Name is required
'Name' is required.
Bad Request
Passed
1ms
5
Name
<img src=x onerror=alert(1)>
Event handler in name
Name contains potentially dangerous content.
Bad Request
Passed
1ms
6
Name
<script>alert('xss')</script>
Script tag in name
Name contains potentially dangerous content.
Bad Request
Passed
17ms
Diagrams
This scenario:Payloads
Updating a non existent topping should return not found 5ms🔗Diagrams
This scenario:Payloads
Toppings Xss Validation TestsTopping request with invalid or dangerous input should return bad request 6/6 passed12ms🔗
#
Input Parameters
Status
Duration
Field
Value
Reason
Expected Error
Expected Status
1
Category
Category is required
'Category' is required.
Bad Request
Passed
1ms
2
Category
<script>alert('xss')</script>
Script tag in category
Category contains potentially dangerous content.
Bad Request
Passed
1ms
3
Category
javascript:alert(1)
Javascript protocol
Category contains potentially dangerous content.
Bad Request
Passed
1ms
4
Name
Name is required
'Name' is required.
Bad Request
Passed
1ms
5
Name
<img src=x onerror=alert(1)>
Event handler in name
Name contains potentially dangerous content.
Bad Request
Passed
2ms
6
Name
<script>alert('xss')</script>
Script tag in name
Name contains potentially dangerous content.
Bad Request
Passed
6ms
Diagrams
This scenario:Payloads
Waffles Content Negotiation TestsSending request with unsupported content type should return unsupported media type 3/3 passed3ms🔗
#
Input Parameters
Status
Duration
Content Type
1
application/xml
Passed
0ms
2
text/html
Passed
0ms
3
text/plain
Passed
2ms
Diagrams
This scenario:Payloads
Waffles Creation TestsValid waffle request with all ingredients should return a fresh batch Happy Path49ms🔗Diagrams
This scenario:Payloads
Waffle request with invalid ingredient should return bad request 6/6 passed13ms🔗
#
Input Parameters
Status
Duration
Field
Value
Reason
Expected Error
Expected Status
1
Butter
Butter is required
'Butter' is required.
Bad Request
Passed
1ms
2
Butter
<img onerror=x>
XSS in butter
Butter contains potentially dangerous content.
Bad Request
Passed
1ms
3
Eggs
Eggs is required
'Eggs' is required.
Bad Request
Passed
1ms
4
Flour
Flour is required
'Flour' is required.
Bad Request
Passed
2ms
5
Milk
Milk is required
'Milk' is required.
Bad Request
Passed
6ms
6
Milk
<script>alert</script>
XSS in milk
Milk contains potentially dangerous content.
Bad Request
Passed
1ms
Diagrams
This scenario:Payloads
Waffle request with more toppings than allowed should return bad request 9ms🔗Diagrams
This scenario:Payloads
Scenario Timeline 🛈
ShowWarm-upOrder
Creating an order should produce an audit log entry and events
1.3s
Outbox message should transition to failed after exhausting retries
1.0s
Audit logs should be filterable by entity id
973ms
Different muffin recipes should produce the expected batch ["Classic",MuffinRecipeTestData { Ingredients = IngredientSet { Flour = Plain Flour, Apples = Granny Smith, Cinnamon = Ceylon }, Toppings = System.Collections.Generic.List`1[BreakfastProvider.Tests.Comโฆ]
854ms
Batch completions should contain data ingested via pubsub consumer
757ms
Valid order should be created and an event published
630ms
Retrieving existing customer preferences should return the preferences
531ms
Getting usage summary should return aggregated data
394ms
Deleting a reading should remove it from the list
302ms
The open api endpoint should return a valid specification
234ms
Creating an order should emit a structured log entry
214ms
Goat milk endpoint should return not found when feature is disabled
200ms
Health check should report degraded when cow service is unavailable
193ms
Order at maximum items per order should be accepted
184ms
The async api endpoint should return a valid specification
172ms
Order exceeding maximum items per order should be rejected
148ms
Exceeding rate limit should return too many requests
132ms
Health check should report degraded when downstream service returns non success status
131ms
The scalar ui endpoint should return a valid page
126ms
Health check should report degraded when multiple downstream services are unavailable
123ms
Toppings should include raspberries when feature flag is enabled
122ms
Listing notes by recipe should return matching notes
118ms
Order should progress through all status transitions to completion
110ms
Goat milk endpoint should return fresh goat milk when feature is enabled
110ms
Toppings should exclude raspberries when feature flag is disabled
104ms
Listing orders should return a paginated response
103ms
Cancelling a reservation should return the cancelled reservation
102ms
Requesting second page should return different orders
101ms
Listing orders with small page size should limit results
98ms
Creating an order should write an outbox message that gets processed
87ms
Same order with different idempotency keys should return different confirmations
85ms
Creating a chef note should return the created note
72ms
Getting the timing summary should return aggregated data
65ms
Adding a new inventory item should return the created item
65ms
Listing usage by ingredient should return matching records
64ms
Listing feedback for an order should return the feedback
61ms
Deleting an inventory item should return no content
61ms
Popular recipes should return recipe types ordered by frequency
60ms
Deleting a waste record should return no content
60ms
Creating an order should produce a retrievable audit log entry
59ms
Ingredient shipments should be recorded when delivered via eventgrid webhook
58ms
Menu should return cached results on subsequent requests
58ms
Muffin request with invalid field should return bad request ["Flour","","Flour is required","'Flour' is required.","Bad Request"]
58ms
Listing reviews by recipe should return matching reviews
58ms
The graph ql schema endpoint should return a valid specification
57ms
Adding a new staff member should return the created member
56ms
Recipe reports should contain ingested recipe data
55ms
The graph ql schema definition endpoint should return the schema definition
53ms
The grpc contract endpoint should return a valid specification
50ms
Valid waffle request with all ingredients should return a fresh batch
49ms
Grpc server reflection should describe the breakfast service
48ms
Pancake recipe summary should return correct data
47ms
Audit logs should be filterable by entity type
45ms
Order summaries should contain ingested order data
42ms
Listing all inventory items should return all items
42ms
Invalid status transition should return conflict ["Preparing","Cancelled"]
41ms
Streaming order updates should return the current status
41ms
Updating an inventory item should return the updated item
39ms
Equipment alerts should contain data ingested via event hub consumer
38ms
Audit logs should be returned in descending timestamp order
36ms
Valid apple cinnamon muffin request should return a fresh batch
36ms
Menu endpoint should return all menu items with availability
36ms
Listing readings by equipment should return matching records
36ms
Updating a non existent note should return not found
36ms
Request with correlation id should forward it to cow service
34ms
Listing waste by recipe should return matching records
33ms
Listing timings by station should return matching records
33ms
The grpc ui endpoint should return a page describing the service
33ms
Order status via grpc should return order details
32ms
Consuming customer feedback event should trigger downstream processing
32ms
Retrieving existing feedback by id should return the feedback
31ms
Adding a new topping should return the created topping
31ms
Request with correlation id should return same id in response
31ms
Previously created order should be retrievable by id
30ms
Requesting menu when supplier service unavailable should mark items as unavailable
30ms
Valid status transition should update the order ["Ready","Completed"]
28ms
Order status for non existent order should return not found
28ms
Deleting a staff member should return no content
27ms
Invalid status transition should return conflict ["Created","Ready"]
27ms
Ingredient usage should aggregate across multiple recipes
26ms
Creating an order when kitchen service returns error should still create the order
26ms
Retrieving an existing note by id should return the note
25ms
Request with correlation id should forward it to supplier service
25ms
Retrieving existing review by id should return the review
23ms
Retrieving a non existent note should return not found
23ms
Consuming an order served event should trigger downstream processing
23ms
Retrieving an existing reservation should return the reservation
23ms
Updating an existing note should return the updated note
22ms
Invalid status transition should return conflict ["Completed","Preparing"]
21ms
Requesting goat milk when goat service returns invalid response should return bad gateway
21ms
Invalid status transition should return conflict ["Ready","Preparing"]
21ms
Valid status transition should update the order ["Created","Preparing"]
20ms
Retrieving an existing staff member should return the member
20ms
Consuming recipe cost event should trigger downstream processing
20ms
Creating a note with missing note text should return bad request
19ms
Different muffin recipes should produce the expected batch ["Rustic Wholesome",MuffinRecipeTestData { Ingredients = IngredientSet { Flour = Whole Wheat, Apples = Honeycrisp, Cinnamon = Cassia }, Toppings = System.Collections.Generic.List`1[BreakfastProvider.Teโฆ]
19ms
Listing orders when none exist should return an empty page
19ms
Valid status transition should update the order ["Preparing","Ready"]
18ms
Daily specials endpoint should return all available specials
17ms
Update topping with invalid or dangerous input should return bad request ["Name","<script>alert('xss')</script>","Script tag in name","Name contains potentially dangerous content.","Bad Request"]
17ms
Invalid status transition should return conflict ["Cancelled","Ready"]
17ms
Deleting a reservation should return no content
16ms
Valid status transition should update the order ["Created","Cancelled"]
16ms
Invalid status transition should return conflict ["Created","Completed"]
16ms
Valid pancake request with all ingredients should return a fresh batch
16ms
Invalid status transition should return conflict ["Cancelled","Preparing"]
16ms
Retrieving a non existent inventory item should return not found
15ms
Updating customer preferences should return the updated preferences
14ms
Same order with same idempotency key should return same confirmation
14ms
The graph ql ui endpoint should return a valid page
14ms
Health check response should include description and data for each entry
13ms
Different muffin recipes should produce the expected batch ["Spiced Deluxe",MuffinRecipeTestData { Ingredients = IngredientSet { Flour = Almond Flour, Apples = Pink Lady, Cinnamon = Saigon }, Toppings = System.Collections.Generic.List`1[BreakfastProvider.Testsโฆ]
13ms
Retrieving an existing inventory item should return the item
12ms
Cancelling an already cancelled reservation should return a conflict response
11ms
Grpc server reflection should list the breakfast service
10ms
Recording an equipment reading should return the created record
10ms
Health check endpoint should return healthy status with all dependency details
10ms
Toppings endpoint should return all available toppings
9ms
Filtering audit logs by a non existent entity type should return an empty collection
9ms
Recording ingredient waste should return the created record
9ms
Pancake request with more toppings than allowed should return bad request
9ms
Waffle request with more toppings than allowed should return bad request
9ms
Recording ingredient usage should return the created record
9ms
Submitting feedback should return the created feedback
9ms
Streaming updates for non existent order should return not found
9ms
Saving customer preferences should return the saved preferences
8ms
Daily special order with invalid field should return bad request ["SpecialId",null,"Special ID is required","'Special Id' is required.","Bad Request"]
8ms
Retrieving non existent customer preferences should return not found
8ms
Requesting milk when cow service returns invalid response should return bad gateway
8ms
The async api ui endpoint should return a valid page
8ms
Deleting a non existent topping should return not found
8ms
Updating an existing topping should return the updated topping
7ms
Goat milk endpoint should return fresh goat milk from goat service
7ms
Creating a reservation should return the confirmed reservation
7ms
Heartbeat endpoint should return a running message
7ms
Order summaries should return an empty list when no orders exist
7ms
Order with invalid field should return bad request ["CustomerName","","Customer name is required","'Customer Name' is required.","Bad Request"]
7ms
Recording a reading with zero value should return bad request
6ms
Ordering daily special beyond threshold should return conflict
6ms
Remaining quantity should decrease after each order
6ms
Recording an order timing should return the created record
6ms
Order status update with invalid field should return bad request ["Status","","Status is required","'Status' is required.","Bad Request"]
6ms
Requesting milk when cow service times out should return bad gateway
6ms
Topping request with invalid or dangerous input should return bad request ["Name","<script>alert('xss')</script>","Script tag in name","Name contains potentially dangerous content.","Bad Request"]
6ms
Waffle request with invalid ingredient should return bad request ["Milk","","Milk is required","'Milk' is required.","Bad Request"]
6ms
Submitting a recipe review should return the created review
5ms
Updating a non existent topping should return not found
5ms
Pancake request with invalid ingredient should return bad request ["Milk","","Milk is required","'Milk' is required.","Bad Request"]
5ms
Valid daily special order should return a confirmation
5ms
Retrieving non existent feedback should return not found
5ms
Daily special order with invalid field should return bad request ["Quantity","0","Quantity must be greater than zero","Quantity must be greater than zero.","Bad Request"]
5ms
Requesting goat milk when goat service unavailable should return bad gateway
5ms
The grpc proto endpoint should return the proto file
5ms
Requesting milk when cow service unavailable should return bad gateway
4ms
Recording a reading with missing metric should return bad request
4ms
Creating a note with missing recipe name should return bad request
4ms
Saving customer preferences with missing customer name should return bad request
4ms
Ordering non existent daily special should return not found
4ms
Waffle recipe summary should return correct data
4ms
Request without correlation id should have one generated in response
3ms
Submitting feedback with invalid rating should return bad request
3ms
Unknown recipe type should return zero batches
3ms
Adding a staff member with an invalid role should return a bad request response
3ms
Recording a timing with missing station should return bad request
3ms
Recording waste with missing ingredient name should return bad request
3ms
Retrieving non existent review should return not found
3ms
Deleting an existing topping should return no content
3ms
Recording usage with missing ingredient name should return bad request
3ms
Recording waste with missing reason should return bad request
3ms
Recording waste with zero quantity should return bad request
3ms
Retrieving a non existent order should return not found
3ms
Recording usage with zero quantity should return bad request
3ms
Muffin request with invalid field should return bad request ["Apples","","Apples is required","'Apples' is required.","Bad Request"]
3ms
Updating status of non existent order should return not found
3ms
Muffin request with invalid field should return bad request ["Cinnamon","<script>alert('xss')</script>","XSS in cinnamon","Cinnamon contains potentially dangerous content.","Bad Request"]
2ms
Waffle request with invalid ingredient should return bad request ["Flour","","Flour is required","'Flour' is required.","Bad Request"]
2ms
Submitting feedback with missing customer name should return bad request
2ms
Recording a timing with zero prep seconds should return bad request
2ms
Submitting review with invalid rating should return bad request
2ms
Sending request with unsupported content type should return unsupported media type ["text/plain"]
2ms
Submitting review with missing recipe name should return bad request
2ms
Request with unsupported content type should return unsupported media type ["text/plain"]
2ms
Topping request with invalid or dangerous input should return bad request ["Name","<img src=x onerror=alert(1)>","Event handler in name","Name contains potentially dangerous content.","Bad Request"]
2ms
Order with invalid field should return bad request ["Items",null,"At least one item is required","The Items field is required.","Bad Request"]
1ms
Order with invalid field should return bad request ["Items[0].ItemType","","Item type is required","'Item Type' is required.","Bad Request"]
1ms
Update topping with invalid or dangerous input should return bad request ["Category","<script>alert('xss')</script>","Script tag in category","Category contains potentially dangerous content.","Bad Request"]
1ms
Update topping with invalid or dangerous input should return bad request ["Name","<img src=x onerror=alert(1)>","Event handler in name","Name contains potentially dangerous content.","Bad Request"]
1ms
Muffin request with invalid field should return bad request ["Cinnamon","","Cinnamon is required","'Cinnamon' is required.","Bad Request"]
1ms
Muffin request with invalid field should return bad request ["Eggs","","Eggs is required","'Eggs' is required.","Bad Request"]
1ms
Muffin request with invalid field should return bad request ["Milk","","Milk is required","'Milk' is required.","Bad Request"]
1ms
Order with invalid field should return bad request ["Items[0].Quantity","0","Quantity must be greater than zero","Quantity must be greater than zero.","Bad Request"]
1ms
Update topping with invalid or dangerous input should return bad request ["Category","javascript:alert(1)","Javascript protocol","Category contains potentially dangerous content.","Bad Request"]
1ms
Pancake request with invalid ingredient should return bad request ["Flour","","Flour is required","'Flour' is required.","Bad Request"]
1ms
Order with invalid field should return bad request ["Items[0].BatchId",null,"Batch ID is required","'Batch Id' is required.","Bad Request"]
1ms
Update topping with invalid or dangerous input should return bad request ["Name","","Name is required","'Name' is required.","Bad Request"]
1ms
Waffle request with invalid ingredient should return bad request ["Milk","<script>alert</script>","XSS in milk","Milk contains potentially dangerous content.","Bad Request"]
1ms
Topping request with invalid or dangerous input should return bad request ["Category","javascript:alert(1)","Javascript protocol","Category contains potentially dangerous content.","Bad Request"]
1ms
Pancake request with invalid ingredient should return bad request ["Milk","<script>alert</script>","XSS in milk","Milk contains potentially dangerous content.","Bad Request"]
1ms
Waffle request with invalid ingredient should return bad request ["Butter","<img onerror=x>","XSS in butter","Butter contains potentially dangerous content.","Bad Request"]
1ms
Topping request with invalid or dangerous input should return bad request ["Category","","Category is required","'Category' is required.","Bad Request"]
1ms
Topping request with invalid or dangerous input should return bad request ["Name","","Name is required","'Name' is required.","Bad Request"]
1ms
Pancake request with invalid ingredient should return bad request ["Eggs","","Eggs is required","'Eggs' is required.","Bad Request"]
1ms
Pancake request with invalid ingredient should return bad request ["Flour","<img onerror=x>","XSS in flour","Flour contains potentially dangerous content.","Bad Request"]
1ms
Topping request with invalid or dangerous input should return bad request ["Category","<script>alert('xss')</script>","Script tag in category","Category contains potentially dangerous content.","Bad Request"]
1ms
Waffle request with invalid ingredient should return bad request ["Butter","","Butter is required","'Butter' is required.","Bad Request"]
1ms
Update topping with invalid or dangerous input should return bad request ["Category","","Category is required","'Category' is required.","Bad Request"]
1ms
Waffle request with invalid ingredient should return bad request ["Eggs","","Eggs is required","'Eggs' is required.","Bad Request"]
1ms
Pancake request with invalid ingredient should return bad request ["Eggs","javascript:void(0)","XSS in eggs","Eggs contains potentially dangerous content.","Bad Request"]
0ms
Sending request with unsupported content type should return unsupported media type ["application/xml"]
0ms
Request with unsupported content type should return unsupported media type ["application/xml"]
0ms
Sending request with unsupported content type should return unsupported media type ["text/html"]
0ms
Request with unsupported content type should return unsupported media type ["text/html"]
0ms
Component Diagram 🛈
ShowDirectionCall summaries
History nothing changed (against 50 earlier runs on main)
stream main ยท run gh:40174567678:1 ยท 50 earlier runs in the window