Skip to content

test: expand coverage to ~99% line, 100% method#84

Merged
JerrettDavis merged 1 commit into
mainfrom
feature/expand-test-coverage
May 22, 2026
Merged

test: expand coverage to ~99% line, 100% method#84
JerrettDavis merged 1 commit into
mainfrom
feature/expand-test-coverage

Conversation

@JerrettDavis

Copy link
Copy Markdown
Owner

Summary

  • Adds 8 new test files covering edge cases and previously uncovered branches across two test projects
  • TinyBDD.Extensions.FileBased.Tests: GherkinDslParserEdgeTests.cs (feature description finalization, tag boundary, quoted string stripping, comment/blank line skipping), StepResolverEdgeTests.cs (default-value parameter path, required-parameter-missing throw)
  • TinyBDD.Tests.Common: ExpectFluentEdgeTests.cs (fluent assertion failure paths), GenerateOptimizedAttributeTests.cs (attribute defaults and reflection), JsonReportObserverDirectTests.cs (out-of-order lifecycle early-outs), KindStringsTests.cs (step keyword mapping including out-of-range fallback), SetupTeardown/AssemblyFixtureCoordinatorEdgeTests.cs (teardown exception handling and idempotency), SetupTeardown/AssemblyFixtureDefaultsTests.cs (default virtual setup/teardown implementations)
  • Final coverage: 98.7% line (2523/2556) / 89.3% branch (693/776) / 100% method (801/801)
  • 18 packages.lock.json files refreshed as a side effect of the dependency restore step

Test plan

  • All tests pass locally: 0 failures across all target frameworks (net8.0, net9.0, net10.0)
  • dotnet test TinyBDD.sln --configuration Release -- green
  • CI pr-checks job passes (drift check, build, test with coverage, benchmarks smoke test)
  • Coverage badge updated on PR via sticky comment

Generated with Claude Code

Adds edge/direct tests across TinyBDD.Tests.Common and
TinyBDD.Extensions.FileBased.Tests to push coverage to 98.7%
line / 89.3% branch / 100% method.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

⚠️ Deprecation Warning: The deny-licenses option is deprecated for possible removal in the next major release. For more information, see issue 997.

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Snapshot Warnings

⚠️: No snapshots were found for the head SHA ca75e7d.
Ensure that dependencies are being submitted on PR branches and consider enabling retry-on-snapshot-warnings. See the documentation for more information and troubleshooting advice.

Scanned Files

None

@github-actions

Copy link
Copy Markdown

Code Coverage

Summary
  Generated on: 05/22/2026 - 13:02:18
  Coverage date: 05/22/2026 - 13:01:43 - 05/22/2026 - 13:02:15
  Parser: MultiReport (21x Cobertura)
  Assemblies: 9
  Classes: 89
  Files: 82
  Line coverage: 98.7%
  Covered lines: 2523
  Uncovered lines: 33
  Coverable lines: 2556
  Total lines: 10254
  Branch coverage: 89.3% (693 of 776)
  Covered branches: 693
  Total branches: 776
  Method coverage: 100% (801 of 801)
  Full method coverage: 97.2% (779 of 801)
  Covered methods: 801
  Fully covered methods: 779
  Total methods: 801

TinyBDD                                                                   98.7%
  TinyBDD.Ambient                                                          100%
  TinyBDD.AmbientTestMethodResolver                                        100%
  TinyBDD.AssemblyFixture                                                  100%
  TinyBDD.AssemblyFixtureCoordinator                                      94.7%
  TinyBDD.AssemblySetupAttribute                                           100%
  TinyBDD.Assertions.Expect                                                100%
  TinyBDD.Assertions.FluentAssertion<T>                                     95%
  TinyBDD.Assertions.FluentAssertionState<T>                               100%
  TinyBDD.Assertions.FluentPredicate<T>                                    100%
  TinyBDD.Assertions.ShouldExtensions                                      100%
  TinyBDD.Assertions.TinyBddAssertionException                             100%
  TinyBDD.AssertUtil                                                       100%
  TinyBDD.Bdd                                                              100%
  TinyBDD.BddStepException                                                 100%
  TinyBDD.ExampleResult                                                    100%
  TinyBDD.ExampleRow<T>                                                    100%
  TinyBDD.ExamplesBuilder<T>                                               100%
  TinyBDD.ExamplesResult                                                   100%
  TinyBDD.Extensions.StepExtensions                                        100%
  TinyBDD.Extensions.Throw                                                 100%
  TinyBDD.FeatureAttribute                                                 100%
  TinyBDD.Flow                                                             100%
  TinyBDD.FromContext                                                      100%
  TinyBDD.GenerateOptimizedAttribute                                       100%
  TinyBDD.GherkinFormatter                                                 100%
  TinyBDD.KindStrings                                                      100%
  TinyBDD.NullTraitBridge                                                  100%
  TinyBDD.Pipeline                                                        98.7%
  TinyBDD.ScenarioAttribute                                                100%
  TinyBDD.ScenarioCaseAttribute                                            100%
  TinyBDD.ScenarioChain<T>                                                 100%
  TinyBDD.ScenarioContext                                                  100%
  TinyBDD.ScenarioContextAsserts                                           100%
  TinyBDD.ScenarioContextGherkinExtensions                                 100%
  TinyBDD.ScenarioContextPrototype                                         100%
  TinyBDD.ScenarioOptions                                                  100%
  TinyBDD.ScenarioOutlineBuilder<T>                                        100%
  TinyBDD.ScenarioOutlineChain<T1, T2>                                     100%
  TinyBDD.ScenarioOutlineTerminal<T1, T2>                                  100%
  TinyBDD.StepInfo                                                         100%
  TinyBDD.StepIO                                                           100%
  TinyBDD.StepResult                                                       100%
  TinyBDD.StringBddReporter                                                100%
  TinyBDD.TagAttribute                                                     100%
  TinyBDD.TestBase                                                         100%
  TinyBDD.TestBase<T>                                                      100%
  TinyBDD.ThenChain<T>                                                     100%
  TinyBDD.TinyBddExtensibilityOptions                                      100%
  TinyBDD.TinyBddOptionsBuilder                                            100%

TinyBDD.Extensions.DependencyInjection                                     100%
  TinyBDD.Extensions.DependencyInjection.ScenarioContextFactory            100%
  TinyBDD.Extensions.DependencyInjection.ServiceCollectionExtensions       100%
  TinyBDD.Extensions.DependencyInjection.TinyBddOptions                    100%

TinyBDD.Extensions.FileBased                                                98%
  TinyBDD.Extensions.FileBased.Configuration.FileBasedDslOptions           100%
  TinyBDD.Extensions.FileBased.Configuration.FileBasedDslOptionsBuilder    100%
  TinyBDD.Extensions.FileBased.Configuration.FileDiscovery                 100%
  TinyBDD.Extensions.FileBased.Core.DriverMethodAttribute                  100%
  TinyBDD.Extensions.FileBased.Execution.DriverMethodInfo                  100%
  TinyBDD.Extensions.FileBased.Execution.ScenarioExecutor                 98.7%
  TinyBDD.Extensions.FileBased.Execution.StepResolver                      100%
  TinyBDD.Extensions.FileBased.FileBasedTestBase<T>                        100%
  TinyBDD.Extensions.FileBased.Models.FeatureDefinition                    100%
  TinyBDD.Extensions.FileBased.Models.ScenarioDefinition                   100%
  TinyBDD.Extensions.FileBased.Models.StepDefinition                       100%
  TinyBDD.Extensions.FileBased.Parsers.GherkinDslParser                   94.8%
  TinyBDD.Extensions.FileBased.Parsers.YamlDslParser                       100%

TinyBDD.Extensions.Hosting                                                 100%
  TinyBDD.Extensions.Hosting.HostBuilderExtensions                         100%
  TinyBDD.Extensions.Hosting.TinyBddHostingOptions                         100%
  TinyBDD.Extensions.Hosting.WorkflowHostedService<T>                      100%
  TinyBDD.Extensions.Hosting.WorkflowRunner                                100%

TinyBDD.Extensions.Reporting                                               100%
  TinyBDD.Extensions.Reporting.JsonReport                                  100%
  TinyBDD.Extensions.Reporting.JsonReportObserver                          100%
  TinyBDD.Extensions.Reporting.ScenarioReport                              100%
  TinyBDD.Extensions.Reporting.StepReport                                  100%
  TinyBDD.Extensions.Reporting.TinyBddReportingExtensions                  100%

TinyBDD.MSTest                                                             100%
  TinyBDD.MSTest.MsTestBddReporter                                         100%
  TinyBDD.MSTest.MsTestTraitBridge                                         100%
  TinyBDD.MSTest.TinyBddMsTestBase                                         100%

TinyBDD.NUnit                                                              100%
  TinyBDD.NUnit.NUnitBddReporter                                           100%
  TinyBDD.NUnit.NUnitTraitBridge                                           100%
  TinyBDD.NUnit.TinyBddNUnitBase                                           100%
  TinyBDD.NUnit.UseTinyBddAttribute                                        100%

TinyBDD.Xunit                                                             93.2%
  TinyBDD.Xunit.TinyBddXunitBase                                          90.6%
  TinyBDD.Xunit.UseTinyBddAttribute                                        100%
  TinyBDD.Xunit.XunitBddReporter                                           100%
  TinyBDD.Xunit.XunitTraitBridge                                           100%

TinyBDD.Xunit.v3                                                           100%
  TinyBDD.Xunit.v3.TinyBddXunitBase                                        100%
  TinyBDD.Xunit.v3.UseTinyBddAttribute                                     100%
  TinyBDD.Xunit.v3.XunitBddReporter                                        100%
  TinyBDD.Xunit.v3.XunitTraitBridge                                        100%

@github-actions

Copy link
Copy Markdown

Test Results

783 tests   783 ✅  13s ⏱️
  7 suites    0 💤
  7 files      0 ❌

Results for commit ca75e7d.

@codecov

codecov Bot commented May 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.82%. Comparing base (51777bd) to head (ca75e7d).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #84      +/-   ##
==========================================
+ Coverage   98.23%   98.82%   +0.58%     
==========================================
  Files          82       82              
  Lines        2556     2556              
  Branches      303      303              
==========================================
+ Hits         2511     2526      +15     
+ Misses         45       30      -15     
Flag Coverage Δ
unittests 98.82% <ø> (+0.58%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@JerrettDavis JerrettDavis merged commit a802bcd into main May 22, 2026
15 checks passed
@JerrettDavis JerrettDavis deleted the feature/expand-test-coverage branch May 22, 2026 13:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant