-
Notifications
You must be signed in to change notification settings - Fork 1
Integration tests everywhere #8
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
Conversation
These require a full-blown desktop environment which is hardly ever available where these tests are run
It's pointless because it doesn't ever throw
summary: Run #35
❌ Some tests failed!
Github Test Reporter by CTRF 💚 🔄 This comment has been updated |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces comprehensive integration test infrastructure with multi-platform support (Windows, macOS, Linux, and WSL). The changes enable automated testing across different operating systems using GitHub Actions, with proper platform-specific test handling and skipping mechanisms.
Key Changes:
- Added GitHub Actions workflow for running integration tests on Ubuntu, Windows, and macOS
- Upgraded target framework and test package versions
- Introduced platform-specific test attributes (
SkippableFact,SupportedOSPlatform,SkipOnWslFact) to handle OS-specific functionality - Enhanced Electron runtime initialization with better error handling and debug logging
- Added support for passing extra arguments to Electron process
Reviewed Changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated 12 comments.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/integration-tests.yml |
New CI/CD workflow for multi-platform integration testing with test result reporting |
src/testEnvironments.json |
Test environment configuration for WSL and Docker environments |
src/ElectronNET.IntegrationTests/xunit.runner.json |
xUnit test runner configuration with sequential execution |
src/ElectronNET.IntegrationTests/ElectronNET.IntegrationTests.csproj |
Updated target framework to net10.0 and upgraded test package versions |
src/ElectronNET.IntegrationTests/ElectronFixture.cs |
Enhanced test fixture with timeout handling, error logging, and about:blank URL parameter |
src/ElectronNET.IntegrationTests/Common/SkipOnWslFactAttribute.cs |
New custom attribute to skip tests on WSL environments |
src/ElectronNET.IntegrationTests/Tests/*.cs |
Updated tests with platform-specific attributes and removed redundant OS detection logic |
src/ElectronNET/build/ElectronNET.props |
Made RuntimeIdentifier conditional to support cross-platform builds |
src/ElectronNET.API/ElectronNetRuntime.cs |
Added ElectronExtraArguments property for passing additional Electron arguments |
src/ElectronNET.API/Runtime/Controllers/RuntimeControllerDotNetFirst.cs |
Integrated extra arguments handling and added null safety checks |
src/ElectronNET.API/Runtime/Services/ElectronProcess/ElectronProcessActive.cs |
Added macOS Electron path support and enhanced error logging |
src/ElectronNET.API/Runtime/StartupManager.cs |
Added diagnostic logging for test assembly detection |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/ElectronNET.API/Runtime/Services/ElectronProcess/ElectronProcessActive.cs
Outdated
Show resolved
Hide resolved
d90a3d5 to
615208c
Compare
|
I've let those few failing tests unaddressed (for the moment) for a more insteresting appearance. A comprehensive test report can be found on the Actions overwiew (build summary) page: https://github.com/softworkz/ElectronNET/actions/runs/19387149581?pr=8 |
Windows
Linux
macOS
... plus WSL (locally, from VS Test Explorer)