Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Desktop app fault injection #276

Open
Brendonovich opened this issue Jan 29, 2025 — with Linear · 1 comment
Open

Desktop app fault injection #276

Brendonovich opened this issue Jan 29, 2025 — with Linear · 1 comment
Assignees

Comments

Copy link
Member

While it's important to test that things work properly, it's also very important to make sure that when things don't work properly, the app can recover and display useful information to diagnose the problem. A simple way to test this is to introduce fault injection where we insert failure points into development that we can trigger manually.
For a basic implementation, I'd like this to work by us creating a fail_point macro that uses ctor to register fail points at app startup, like we do with types in specta. We would then have a window that retrieves all these fail points, and would allow us to toggle them on and off. The macro would produce code that reads from some global state (all wrapped in cfg(debug_assertions), of course) and fails if we have enabled that point.

@Brendonovich Brendonovich self-assigned this Jan 29, 2025
@Brendonovich
Copy link
Member Author

It'd also be nice if this tested 'faults' like frame skips, not necessarily a fault per-se but an edge case we need to handle.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant