Steeltoe
Steeltoe copied to clipboard
Various test fixes
Backported changes from experimenting with running tests on MTPv2.
- Fixes test failures when running in WSL2 on Ubuntu Make assertions ignore differences in line endings, originating from multi-line raw string literals. The code is compiled using the Windows newline separator, which differs from the newline separator used when executing on Ubuntu.
- Explicitly target VSTest mode in xUnit
~Reference
xunit.v3.mtp-off, so we don't needDisableTestingPlatformServerCapability=falseanymore.~ Edit: Reverted back to referencexunit.v3, becausexunit.v3.mtp-offbreaks running tests in WSL. - Adds a workaround to prevent taking a dump on hanging/crashing test on macOS from timing out
- Reduce test hang timeout from 3 to 1 minutes A hanging test on all three frameworks took 9 minutes, leaving insufficient time to upload the dump in component builds (which time out after 15 minutes).
- Always write test output to a subdirectory, instead of the checkout root
- Run tests for all frameworks in a single command (the bug ignoring
TestTfmsInParallelhas been fixed) - Replace
skipFilterwith a boolean, which separates intent from implementation - Run memory dump tests only for
Management.Endpoint.Testproject to speed up runs - Add diagnostics to investigate intermittent hostname lookup failures on macOS Guarded by an environment variable that is set in GHA, to not influence existing production behavior.
Summary - All Code Coverage (ubuntu-latest)
| Assembly | Line coverage | Branch coverage |
|---|---|---|
| Steeltoe.Bootstrap.AutoConfiguration | 97.4% | 100% |
| Steeltoe.Common | 84.3% | 78.6% |
| Steeltoe.Common.Certificates | 96.2% | 85.5% |
| Steeltoe.Common.Hosting | 84% | 70% |
| Steeltoe.Common.Http | 100% | 85.2% |
| Steeltoe.Common.Logging | 81.1% | 56.2% |
| Steeltoe.Common.Net | 64.5% | 66.6% |
| Steeltoe.Configuration.Abstractions | 98.5% | 91.1% |
| Steeltoe.Configuration.CloudFoundry | 99.1% | 91.8% |
| Steeltoe.Configuration.ConfigServer | 97.2% | 91.6% |
| Steeltoe.Configuration.Encryption | 97.6% | 92.4% |
| Steeltoe.Configuration.Kubernetes.ServiceBindings | 95.1% | 89.3% |
| Steeltoe.Configuration.Placeholder | 93.8% | 84.7% |
| Steeltoe.Configuration.RandomValue | 93.2% | 90% |
| Steeltoe.Configuration.SpringBoot | 98.3% | 95% |
| Steeltoe.Connectors | 93.9% | 89.8% |
| Steeltoe.Connectors.EntityFrameworkCore | 81.5% | 75% |
| Steeltoe.Discovery.Configuration | 92.3% | 100% |
| Steeltoe.Discovery.Consul | 97.6% | 96.1% |
| Steeltoe.Discovery.Eureka | 91.8% | 85.2% |
| Steeltoe.Discovery.HttpClients | 94.2% | 95.4% |
| Steeltoe.Logging.Abstractions | 99.4% | 96.9% |
| Steeltoe.Logging.DynamicConsole | 100% | 95.4% |
| Steeltoe.Logging.DynamicSerilog | 99.1% | 95.4% |
| Steeltoe.Management.Abstractions | 100% | 100% |
| Steeltoe.Management.Endpoint | 95.5% | 89.1% |
| Steeltoe.Management.Prometheus | 95.9% | 91.6% |
| Steeltoe.Management.Tasks | 100% | **** |
| Steeltoe.Management.Tracing | 100% | 75% |
| Steeltoe.Security.Authentication.JwtBearer | 100% | 100% |
| Steeltoe.Security.Authentication.OpenIdConnect | 73.8% | 59% |
| Steeltoe.Security.Authorization.Certificate | 96.3% | 75% |
| Steeltoe.Security.DataProtection.Redis | 100% | **** |
Quality Gate passed
Issues
0 New issues
0 Accepted issues
Measures
0 Security Hotspots
44.1% Coverage on New Code
0.0% Duplication on New Code