Files
Terminal.Gui/Tests
Tig c9868e9901 Fixes #4434 - InvokeLeakTest (#4435)
* pre-alpha -> alpha

* don't build docs for v2_release

* Pulled from v2_release

* Refactor migration guide for Terminal.Gui v2

Restructured and expanded the migration guide to provide a comprehensive resource for transitioning from Terminal.Gui v1 to v2. Key updates include:

- Added a Table of Contents for easier navigation.
- Summarized major architectural changes in v2, including the instance-based application model, IRunnable architecture, and 24-bit TrueColor support.
- Updated examples to reflect new patterns, such as initializers replacing constructors and explicit disposal using `IDisposable`.
- Documented changes to the layout system, including the removal of `Absolute`/`Computed` styles and the introduction of `Viewport`.
- Standardized event patterns to use `object sender, EventArgs args`.
- Detailed updates to the Keyboard, Mouse, and Navigation APIs, including configurable key bindings and viewport-relative mouse coordinates.
- Replaced legacy components like `ScrollView` and `ContextMenu` with built-in scrolling and `PopoverMenu`.
- Clarified disposal rules and introduced best practices for resource management.
- Provided a complete migration example and a summary of breaking changes.

This update aims to simplify the migration process by addressing breaking changes, introducing new features, and aligning with modern .NET conventions.

* Updated runnable

* Refactor ApplicationStressTests for modularity and robustness

Refactored `ApplicationStressTests` to use `IApplication`
instances instead of static methods, enabling better
testability and alignment with dependency injection.

Enhanced timeout handling in `RunTest` with elapsed time
tracking and debugger-aware polling intervals. Improved
error handling by introducing exceptions for timeouts and
ensuring proper resource cleanup with `application.Dispose`.

Refactored `Launch` and `InvokeLeakTest` methods for
clarity and consistency. Removed redundant code and
improved overall readability and maintainability.
2025-12-03 10:27:42 -07:00
..

Terminal.Gui Tests

This folder contains the tests for Terminal.Gui.

./UnitTests

This folder contains the unit tests for Terminal.Gui that can not be run in parallel. This is because they depend on Application or other class that use static state or ConfigurationManager.

We should be striving to move as many tests as possible to the ./UnitTestsParallelizable folder.

./UnitTestsParallelizable

This folder contains the unit tests for Terminal.Gui that can be run in parallel.

./IntegrationTests

This folder contains the integration tests for Terminal.Gui.

./StressTests

This folder contains the stress tests for Terminal.Gui.

./PerformanceTests

This folder WILL contain the performance tests for Terminal.Gui.

See the Testing wiki for details on how to add more tests.