Skip to content

Refactor: Expanded Testing Project Structure#334

Merged
AnnaSasDev merged 12 commits into
corefrom
testing
Jun 1, 2026
Merged

Refactor: Expanded Testing Project Structure#334
AnnaSasDev merged 12 commits into
corefrom
testing

Conversation

@AnnaSasDev
Copy link
Copy Markdown
Member

Summary

Type of Change

  • Bug fix (non-breaking change fixing an issue)
  • New feature (non-breaking change adding functionality)
  • Breaking change (fix or feature impacting existing APIs)
  • Refactor / Code cleanup (no functional change)
  • Documentation update
  • Test addition or update
  • Other (please describe):

Affected Modules / Scope

  • InfiniFrame
  • InfiniFrame.Blazor
  • InfiniFrame.BlazorWebView
  • InfiniFrame.Js
  • InfiniFrame.Native
  • InfiniFrame.Shared
  • InfiniFrame.WebServer
  • InfiniFrame.Tools.Pack
  • InfiniFrameExample
  • InfiniFrameTests
  • Other:

Changes Introduced

Related Issues

Checklist

  • My code follows InfiniFrame's coding conventions
  • I added comments for complex or non-obvious code
  • Documentation updated (if applicable)
  • All tests pass locally
  • Added new tests for any new functionality
  • Existing tests pass
  • No new warnings or errors introduced
  • PR only includes changes relevant to the issue / feature

📖 Additional Context

- Introduced grouping in `dependabot.yml` configuration:
  - Grouped `.NET` packages into logical categories (`TUnit`, `Serilog`, `Microsoft.Extensions`).
  - Simplified structure for clearer management of dependencies.
… project structure

- Deleted unused `FileUtility` class.
- Replaced `SkipUtility` attributes with new concise `SkipOnLinux`, `SkipOnMacOs`, `SkipOnWindows`, and related attributes.
- Updated `InfiniFrameWindowTestUtility` to `InfiniFrameTestWindow` and `InfiniFrameServerTestUtility` to `InfiniFrameTestServer`.
- Introduced `DefaultInfiniTestsTimeoutAttribute` and `NotInParallelInfiniTestsAttribute` for timeout and parallel testing control.
- Consolidated `TestDoubles` into `Substitutes` and streamlined related namespace references.
…eb asset and update project references in the testing project.
…Windows, macOS, and Linux, and refactor `Create` to delegate platform initialization to partial methods. Simplify test utilities and improve cross-platform consistency.
…ility for better consistency, and restructure tests directory.

- Added comprehensive test coverage for `Managed` components.
  - `NativeRectTests`
  - `NativeMonitorTests`
  - `CustomSchemeNameMemoryTests`
  - `InfiniFrameNativeParametersTests`
  - `InfiniFrameNativeParametersMarshallerTests`
- Renamed `InfiniFrame.Native` to `InfiniFrame.NativeBridge` in `InternalsVisibleTo`.
- Restructured test project folders to align with `Managed` and `Parameters` namespaces.
- Updated project references to include `InfiniFrame.NativeBridge`.
…file name resolution

- Implemented comprehensive unit tests for `ArtifactManifest`.
  - Validates native library file names across platforms (Windows, Linux, macOS).
  - Ensures correct loader file names and platform extensions.
  - Added coverage for `ResolveNativeLibraryFileNameForCurrentPlatform` and `RequiredFileNamesForCurrentPlatform`.
  - Verified naming consistency, extension correctness, and file name uniqueness.
@AnnaSasDev AnnaSasDev changed the title Refactor: Revamp Testing Project Structure Refactor: Expanded Testing Project Structure Jun 1, 2026
…d `KeyedResultEvent`

- Removed outdated unit tests for `OrderedEvent` in `Utilities`.
- Added new test suites under `Shared.Events`:
  - `OrderedEventTests` for improved handler and invocation validation.
  - `OrderedEventWithPayloadTests` for payload-specific scenarios.
  - `KeyedResultEventTests` for key-based handler registration and invocation.
- Resolved namespace inconsistencies across test files (`Utilities`, `NativeBridge` → `Shared`).
- Simplified and centralized `SynchronousTaskScheduler` logic.
- Cleaned up unused project references and improved directory organization for `InfiniTests.*` projects.
…s, and add comprehensive test coverage

- Renamed `TitleStringHelper` to `TitleStringUtility` and updated all references.
- Reorganized `Utils` to `Utilities` in `BlazorWebView` for consistency.
- Removed unused `InvokeAndReturn<T>(IInfiniFrameWindow, Func<IntPtr, T>)`.
- Added test suites:
  - `TitleStringUtilityTests` for validation and default title logic.
  - `CallbackTaskCompletionSource` and `SynchronousTaskScheduler` tests under `Utilities`.
  - `ExceptionsUtilityTests` to validate fatal and non-fatal exception categorization.
  - `InvokeUtilityTests` to ensure proper handling of synchronous invocations.
- Updated test projects' folder structure to align with the latest naming conventions.
@AnnaSasDev AnnaSasDev merged commit 9972074 into core Jun 1, 2026
58 checks passed
@AnnaSasDev AnnaSasDev deleted the testing branch June 1, 2026 20:55
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

Successfully merging this pull request may close these issues.

1 participant