@@ -102,6 +102,7 @@ function pt_print_events($events, $read_data = false): void {
102
102
echo "\n" ;
103
103
}
104
104
}
105
+
105
106
function pt_expect_events ($ events , $ expected , $ poll_ctx = null ): void {
106
107
if (!is_array ($ events )) {
107
108
die ("Events must be an array \n" );
@@ -114,15 +115,15 @@ function pt_expect_events($events, $expected, $poll_ctx = null): void {
114
115
$ event_count = count ($ events );
115
116
$ expected_count = count ($ expected );
116
117
118
+ // Get current backend name for backend-specific expectations
119
+ $ backend_name = $ poll_ctx ? stream_poll_backend_name ($ poll_ctx ) : 'unknown ' ;
120
+
117
121
if ($ event_count !== $ expected_count ) {
118
122
echo "Event count mismatch: got $ event_count, expected $ expected_count \n" ;
119
- pt_print_mismatched_events ($ events , $ expected );
123
+ pt_print_mismatched_events ($ events , $ expected, [], $ backend_name );
120
124
return ;
121
125
}
122
126
123
- // Get current backend name for backend-specific expectations
124
- $ backend_name = $ poll_ctx ? stream_poll_backend_name ($ poll_ctx ) : 'unknown ' ;
125
-
126
127
// Convert events to comparable format for matching
127
128
$ actual_events = [];
128
129
foreach ($ events as $ event ) {
@@ -190,7 +191,7 @@ function pt_expect_events($events, $expected, $poll_ctx = null): void {
190
191
echo "Events matched - count: $ event_count \n" ;
191
192
} else {
192
193
echo "Events did not match: \n" ;
193
- pt_print_mismatched_events ($ events , $ resolved_expected , $ matched );
194
+ pt_print_mismatched_events ($ events , $ expected , $ matched, $ backend_name );
194
195
}
195
196
}
196
197
@@ -229,7 +230,7 @@ function pt_event_flags_to_string($flags): string {
229
230
return empty ($ names ) ? 'NONE ' : implode ('| ' , $ names );
230
231
}
231
232
232
- function pt_print_mismatched_events ($ actual_events , $ expected_events , $ matched = []): void {
233
+ function pt_print_mismatched_events ($ actual_events , $ expected_events , $ matched = [], $ backend_name = null ): void {
233
234
echo "Actual events: \n" ;
234
235
foreach ($ actual_events as $ i => $ event ) {
235
236
$ match_status = isset ($ matched [$ i ]) ? " [MATCHED] " : " [UNMATCHED] " ;
@@ -241,7 +242,13 @@ function pt_print_mismatched_events($actual_events, $expected_events, $matched =
241
242
foreach ($ expected_events as $ i => $ exp_event ) {
242
243
$ was_matched = in_array ($ i , $ matched );
243
244
$ match_status = $ was_matched ? " [MATCHED] " : " [UNMATCHED] " ;
244
- $ event_names = pt_event_flags_to_string ($ exp_event ['events ' ]);
245
+
246
+ $ events_value = $ exp_event ['events ' ];
247
+ if (is_array ($ events_value ) && $ backend_name !== null ) {
248
+ $ events_value = pt_resolve_backend_specific_value ($ events_value , $ backend_name );
249
+ }
250
+
251
+ $ event_names = pt_event_flags_to_string ($ events_value );
245
252
echo " Event[ $ i]: $ event_names, user data: " . $ exp_event ['data ' ];
246
253
if (isset ($ exp_event ['read ' ])) {
247
254
echo ", read data: ' " . $ exp_event ['read ' ] . "' " ;
0 commit comments