| // The errors that pertain to the Input system integration with Starnix Runner (if present). |
| { |
| select: { |
| // Button events |
| converted_button_events: "INSPECT:core/starnix_runner/kernels*:root/container/kernel/keyboard_device:total_fidl_events_converted_count", |
| ignored_button_events: "INSPECT:core/starnix_runner/kernels*:root/container/kernel/keyboard_device:total_fidl_events_ignored_count", |
| received_button_events: "INSPECT:core/starnix_runner/kernels*:root/container/kernel/keyboard_device:total_fidl_events_received_count", |
| |
| // Touch events |
| converted_touch_events: "INSPECT:core/starnix_runner/kernels*:root/container/kernel/touch_device:total_fidl_events_converted_count", |
| ignored_touch_events: "INSPECT:core/starnix_runner/kernels*:root/container/kernel/touch_device:total_fidl_events_ignored_count", |
| received_touch_events: "INSPECT:core/starnix_runner/kernels*:root/container/kernel/touch_device:total_fidl_events_received_count", |
| }, |
| eval: { |
| has_unexpected_button_events: "And(Not(Missing(ignored_button_events)), ignored_button_events > 0)", |
| has_unconverted_button_events: "And(And(Not(Missing(converted_button_events)), Not(Missing(received_button_events))), received_button_events > converted_button_events)", |
| has_unexpected_touch_events: "And(Not(Missing(ignored_touch_events)), ignored_touch_events > 0)", |
| has_unconverted_touch_events: "And(And(Not(Missing(converted_touch_events)), Not(Missing(received_touch_events))), received_touch_events > converted_touch_events)", |
| }, |
| act: { |
| warn_extraneous_button_events: { |
| type: "Warning", |
| trigger: "Or(has_unexpected_button_events, has_unconverted_button_events)", |
| print: "Starnix received unexpected input events from Scene Manager (Input Pipeline)", |
| file_bug: "Input", |
| }, |
| warn_extraneous_touch_events: { |
| type: "Warning", |
| trigger: "Or(has_unexpected_touch_events, has_unconverted_touch_events)", |
| print: "Starnix received unexpected touch events from Scene Manager (Input Pipeline) via Scenic", |
| file_bug: "Input", |
| }, |
| }, |
| test: { |
| all_ok: { |
| no: [ |
| "warn_extraneous_button_events", |
| "warn_extraneous_touch_events", |
| ], |
| yes: [], |
| values: { |
| converted_button_events: 0, |
| ignored_button_events: 0, |
| received_button_events: 0, |
| converted_touch_events: 0, |
| ignored_touch_events: 0, |
| received_touch_events: 0, |
| }, |
| }, |
| all_missing: { |
| no: [ |
| "warn_extraneous_button_events", |
| "warn_extraneous_touch_events", |
| ], |
| yes: [], |
| values: {}, |
| }, |
| any_ignored_button_events: { |
| no: [ |
| "warn_extraneous_touch_events", |
| ], |
| yes: [ |
| "warn_extraneous_button_events", |
| ], |
| values: { |
| converted_button_events: 0, |
| ignored_button_events: 1, |
| received_button_events: 0, |
| converted_touch_events: 0, |
| ignored_touch_events: 0, |
| received_touch_events: 0, |
| }, |
| }, |
| any_unconverted_button_events: { |
| no: [ |
| "warn_extraneous_touch_events", |
| ], |
| yes: [ |
| "warn_extraneous_button_events", |
| ], |
| values: { |
| converted_button_events: 0, |
| ignored_button_events: 0, |
| received_button_events: 1, |
| converted_touch_events: 0, |
| ignored_touch_events: 0, |
| received_touch_events: 0, |
| }, |
| }, |
| any_ignored_touch_events: { |
| no: [ |
| "warn_extraneous_button_events", |
| ], |
| yes: [ |
| "warn_extraneous_touch_events", |
| ], |
| values: { |
| converted_button_events: 0, |
| ignored_button_events: 0, |
| received_button_events: 0, |
| converted_touch_events: 0, |
| ignored_touch_events: 1, |
| received_touch_events: 0, |
| }, |
| }, |
| any_unconverted_touch_events: { |
| no: [ |
| "warn_extraneous_button_events", |
| ], |
| yes: [ |
| "warn_extraneous_touch_events", |
| ], |
| values: { |
| converted_button_events: 0, |
| ignored_button_events: 0, |
| received_button_events: 0, |
| converted_touch_events: 0, |
| ignored_touch_events: 0, |
| received_touch_events: 1, |
| }, |
| }, |
| none_ok: { |
| no: [], |
| yes: [ |
| "warn_extraneous_button_events", |
| "warn_extraneous_touch_events", |
| ], |
| values: { |
| converted_button_events: 0, |
| ignored_button_events: 1, |
| received_button_events: 1, |
| converted_touch_events: 0, |
| ignored_touch_events: 1, |
| received_touch_events: 1, |
| }, |
| }, |
| }, |
| } |