Skip to content

Migrate unit tests from xUnit to TUnit#830

Merged
christianhelle merged 16 commits into
mainfrom
tunit
Dec 4, 2025
Merged

Migrate unit tests from xUnit to TUnit#830
christianhelle merged 16 commits into
mainfrom
tunit

Conversation

@christianhelle

@christianhelle christianhelle commented Dec 4, 2025

Copy link
Copy Markdown
Owner

Migrates all unit tests from xUnit to TUnit testing framework

Summary by CodeRabbit

  • Tests
    • Migrated the test suite to a new test framework: updated test attributes, parameterized-test syntax, and a few assertions; preserved test logic while adding minor test-helper adjustments.
  • Chores
    • Updated test project configuration and tooling settings; adjusted CI test and coverage commands and workflow steps; added global/testing platform settings.
  • Documentation
    • Added and updated testing guidance to reflect the new test framework and usage examples.

✏️ Tip: You can customize this high-level summary in your review settings.

Copilot AI review requested due to automatic review settings December 4, 2025 10:52
@coderabbitai

coderabbitai Bot commented Dec 4, 2025

Copy link
Copy Markdown
Contributor

Walkthrough

Migrate test projects from xUnit to TUnit across most test files, convert parameterized attributes to TUnit equivalents, adjust a few test signatures (notably SerializerTests), add global.json and MSBuild testing props, and update CI test/coverage invocations and test project dependencies.

Changes

Cohort / File(s) Summary
Source Generator Tests
src/Refitter.SourceGenerator.Tests/...
CustomOutputFolderGeneratorTests.cs, MultipleInterfaceByTagGeneratorTests.cs, MultipleInterfaceGeneratorTests.cs, OptionalParametersGeneratorTest.cs, SingleInterfaceGeneratorTest.cs, UseJsonInheritanceConverterTests.cs, UsePolymorphicSerializationTests.cs
Replace xUnit imports/attributes ([Fact],[Theory],[InlineData]) with TUnit equivalents ([Test],[Arguments]); update using to TUnit.Core; small assertion adjustments.
Core Tests
src/Refitter.Tests/...
ApizrGeneratorWithMicrosoftHttpResilienceTests.cs, ApizrGeneratorWithPollyTests.cs, ApizrRegistrationGeneratorTests.cs, CustomCSharpGeneratorSettingsTests.cs, DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs, DependencyInjectionGeneratorWithPollyTests.cs, IdentifierUtilsTests.cs, IllegalSymbolsTests.cs, OpenApiDocumentFactoryTests.cs, PathParametersWithUrlTests.cs, RefitInterfaceImportTests.cs, SchemaCleanerTests.cs, StringCasingExtensionTests.cs, XmlDocumentationGeneratorTests.cs
Swap xUnit using/attributes to TUnit equivalents; convert parameterized tests to [Arguments] where applicable; no other logic changes.
Examples Tests (bulk)
src/Refitter.Tests/Examples/...
*
Replace xUnit imports/attributes with TUnit; convert [Theory]/[InlineData] to [Test]/[Arguments] as needed across many example test files; test bodies unchanged.
Serializer Tests (specialized)
src/Refitter.Tests/SerializerTests.cs
Convert parameterized xUnit tests into parameterless TUnit tests; add private helper CreateTestSettings(); update test signatures and assertion exclusions to use helper settings.
Swagger / Large Test Files
src/Refitter.Tests/...
SwaggerPetstoreApizrTests.cs, SwaggerPetstoreTests.cs, SwaggerPetstoreMultipleFileTests.cs
Extensive migration from Theory/InlineData to Test/Arguments, convert conditional data cases, and minor assertion style changes across large files.
Project & Build Configuration
src/Refitter.SourceGenerator.Tests/Refitter.SourceGenerator.Tests.csproj, src/Refitter.Tests/Refitter.Tests.csproj, global.json, src/Directory.Build.props, .github/workflows/build.yml, .github/workflows/codecov.yml
Replace xUnit/Microsoft test SDK packages with TUnit; set OutputType/ImplicitUsings/Nullable/GenerateProgramFile in csproj(s); add global.json targeting .NET SDK 10 and testingPlatform props; update CI test/coverage commands and coverage output format.
Docs & Contrib
README.md, docs/README.md, CONTRIBUTING.md
Add Testing/TUnit guidance and examples; update CONTRIBUTING test examples to TUnit conventions; README includes added Testing section (appears duplicated).

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

  • Files/areas needing extra attention:
    • src/Refitter.Tests/SerializerTests.cs — helper addition, test-signature changes, and assertion adjustments.
    • src/Refitter.Tests/SwaggerPetstoreTests.cs & SwaggerPetstoreApizrTests.cs — large heterogeneous edits and conditional-data conversions.
    • Project & CI files: Refitter.Tests.csproj, Refitter.SourceGenerator.Tests.csproj, global.json, Directory.Build.props, .github/workflows/* — verify SDK/runner compatibility and coverage output.

Possibly related PRs

  • Add .NET 10 support #822 — overlapping .NET SDK and testing platform configuration changes (global.json, Directory.Build.props, CI/project settings).

Poem

🐰
I hopped from Fact into Test's bright nest,
Swapped InlineData for Arguments dressed,
I nudged a helper, fixed a line or two,
Now TUnit hops the test tree — fresh and new.
🥕✨

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely summarizes the main change: migrating unit tests from xUnit to TUnit testing framework.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch tunit

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 37cc305 and d0aa117.

📒 Files selected for processing (3)
  • CONTRIBUTING.md (1 hunks)
  • README.md (1 hunks)
  • docs/README.md (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (2)
  • README.md
  • docs/README.md
🧰 Additional context used
🧠 Learnings (9)
📓 Common learnings
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : Add unit tests for new CLI options in src/Refitter.Tests/Examples/ following the established test structure
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : New unit tests must follow the pattern used in Refitter.Tests.Examples (Arrange/Act/Assert style with GenerateCode(), content assertions, and build verification)
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Multi-targeting: test .NET 8.0 and 9.0 when making framework-specific changes
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : New unit tests must follow the pattern used in Refitter.Tests.Examples (Arrange/Act/Assert style with GenerateCode(), content assertions, and build verification)

Applied to files:

  • CONTRIBUTING.md
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : Add unit tests for new CLI options in src/Refitter.Tests/Examples/ following the established test structure

Applied to files:

  • CONTRIBUTING.md
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Resources/{V2,V3}/**/*.json : Always test with both OpenAPI 2.0 and 3.0 specifications using the provided test resources

Applied to files:

  • CONTRIBUTING.md
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Manually validate new code by building and running tests after changes; generated code must compile successfully

Applied to files:

  • CONTRIBUTING.md
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Core/RefitInterfaceGenerator.cs : Implement or update generation logic in src/Refitter.Core/RefitInterfaceGenerator.cs (or related generator classes) for new features/options

Applied to files:

  • CONTRIBUTING.md
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: For CLI changes, test with a real OpenAPI specification; for core library changes, run full test suite

Applied to files:

  • CONTRIBUTING.md
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.sln : Use the main solution file src/Refitter.sln for restore, build, test, and formatting operations

Applied to files:

  • CONTRIBUTING.md
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to .github/workflows/*.yml : Ensure CI requirements are met: builds pass on Windows, code formatted, tests pass (except allowed network failures), code coverage and workflows run

Applied to files:

  • CONTRIBUTING.md
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
  • GitHub Check: 👌 Verify build
  • GitHub Check: 👌 Verify build
  • GitHub Check: 👌 Verify build
  • GitHub Check: Analyze (csharp)
🔇 Additional comments (1)
CONTRIBUTING.md (1)

76-76: Documentation accurately reflects the TUnit migration and testing patterns in use.

The contributing guidelines correctly reference TUnit with clear rationale, and the example test code properly demonstrates the Arrange/Act/Assert pattern with all three testing responsibilities: generation validation (GenerateCode()), content assertions, and build verification (BuildHelper.BuildCSharp()). The BuildHelper class exists in the Refitter.Tests.Build namespace as documented, TUnit.Core is consistently used across the test projects, and the migration from xUnit is complete with no remaining references.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request migrates all unit tests from xUnit to the TUnit testing framework, successfully converting 852 tests. The migration involves replacing test attributes, updating project dependencies, and modernizing test patterns.

Key changes:

  • Replaced xUnit package references with TUnit in test projects
  • Converted all [Fact] attributes to [Test] and [Theory]/[InlineData] to [Test]/[Arguments]
  • Removed AutoFixture dependency and refactored tests to use explicit test data
  • Updated project configurations to support TUnit's execution model

Reviewed changes

Copilot reviewed 80 out of 80 changed files in this pull request and generated no comments.

Show a summary per file
File Description
Refitter.Tests.csproj Replaced xUnit packages with TUnit, added required project properties
Refitter.SourceGenerator.Tests.csproj Updated to TUnit, configured for test execution
SwaggerPetstoreTests.cs Migrated 223 test cases from xUnit attributes to TUnit
SerializerTests.cs Removed AutoFixture dependency, refactored to use explicit test data
CustomCSharpGeneratorSettingsTests.cs Removed AutoFixture, migrated to TUnit with explicit parameters
XmlDocumentationGeneratorTests.cs Converted all Fact attributes to Test
SwaggerPetstoreApizrTests.cs Migrated 156 test cases to TUnit
Multiple example test files Converted test attributes consistently across all test scenarios
Source generator test files Updated to TUnit attributes and patterns

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (4)
src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs (1)

41-41: Consider fixing typos in method name.

The method name contains "Ivalid" (should be "Invalid") and "Methode" (should be "Method"). While this doesn't affect functionality, correcting it would improve readability.

Apply this diff to fix the typos:

-    public async Task Adds_Underscore_At_Beginning_With_Ivalid_Methode_Name()
+    public async Task Adds_Underscore_At_Beginning_With_Invalid_Method_Name()
src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs (1)

3-3: TUnit migration is fine; consider avoiding shared mutable settings

The switch to using TUnit.Core; and [Test] on all DI/Polly tests is consistent, and the assertion logic is unchanged. However, several tests mutate settings.DependencyInjectionSettings! (e.g., TransientErrorHandler and BaseUrl), which can couple tests together if the framework ever reuses the same test-class instance or changes parallelization behavior. It would be safer to construct a fresh RefitGeneratorSettings per test (or clone/reset settings.DependencyInjectionSettings) to make tests independent; also, the "Backoff.DecorrelatedJitterBackoffV2" NotContain assertion is duplicated and could be trimmed.

Please confirm TUnit uses per-test-class-instance semantics similar to xUnit here, or consider refactoring to per-test settings to avoid any potential flakiness under parallel runs.

Also applies to: 25-103

src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs (1)

9-21: Shared mutable settings instance may be fragile under parallel execution

Several tests mutate the shared settings.DependencyInjectionSettings (e.g., changing TransientErrorHandler and BaseUrl), which can introduce hidden coupling or flakiness if the runner ever executes these tests in parallel or in an unexpected order. Consider creating a fresh RefitGeneratorSettings per test (or cloning the base configuration) for the tests that modify it to make them independent.

Also applies to: 67-83, 85-99

src/Refitter.Tests/ApizrGeneratorWithPollyTests.cs (1)

9-33: Avoid mutating the shared _extendedSettings across tests

_extendedSettings.DependencyInjectionSettings is modified in multiple tests (e.g., toggling TransientErrorHandler and BaseUrl), which couples tests together and can introduce flakes if execution order or parallelism changes. It would be more robust to construct a fresh RefitGeneratorSettings (or clone _extendedSettings) inside the tests that need to modify it so each test is independent.

Also applies to: 94-110, 112-125

Comment thread src/Refitter.Tests/Refitter.Tests.csproj

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c668250 and 1d54f4b.

📒 Files selected for processing (1)
  • .github/workflows/build.yml (1 hunks)
🧰 Additional context used
🧠 Learnings (3)
📓 Common learnings
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : Add unit tests for new CLI options in src/Refitter.Tests/Examples/ following the established test structure
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : New unit tests must follow the pattern used in Refitter.Tests.Examples (Arrange/Act/Assert style with GenerateCode(), content assertions, and build verification)
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Multi-targeting: test .NET 8.0 and 9.0 when making framework-specific changes
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to .github/workflows/*.yml : Ensure CI requirements are met: builds pass on Windows, code formatted, tests pass (except allowed network failures), code coverage and workflows run

Applied to files:

  • .github/workflows/build.yml
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.sln : Use the main solution file src/Refitter.sln for restore, build, test, and formatting operations

Applied to files:

  • .github/workflows/build.yml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: 👌 Verify build
  • GitHub Check: 👌 Verify build
  • GitHub Check: Analyze (csharp)

Comment thread .github/workflows/build.yml

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1d54f4b and 3731733.

📒 Files selected for processing (1)
  • .github/workflows/codecov.yml (1 hunks)
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : Add unit tests for new CLI options in src/Refitter.Tests/Examples/ following the established test structure
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : New unit tests must follow the pattern used in Refitter.Tests.Examples (Arrange/Act/Assert style with GenerateCode(), content assertions, and build verification)
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Multi-targeting: test .NET 8.0 and 9.0 when making framework-specific changes
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to **/*.cs : Run dotnet format and ensure no formatting changes before committing

Applied to files:

  • .github/workflows/codecov.yml
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to src/Refitter.Tests/Examples/**/*.cs : Add unit tests for new CLI options in src/Refitter.Tests/Examples/ following the established test structure

Applied to files:

  • .github/workflows/codecov.yml
📚 Learning: 2025-10-20T20:29:54.111Z
Learnt from: CR
Repo: christianhelle/refitter PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-20T20:29:54.111Z
Learning: Applies to .github/workflows/*.yml : Ensure CI requirements are met: builds pass on Windows, code formatted, tests pass (except allowed network failures), code coverage and workflows run

Applied to files:

  • .github/workflows/codecov.yml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: 👌 Verify build
  • GitHub Check: 👌 Verify build
  • GitHub Check: Analyze (csharp)

Comment thread .github/workflows/codecov.yml Outdated
@codecov

codecov Bot commented Dec 4, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.72%. Comparing base (45a7f2a) to head (d0aa117).
⚠️ Report is 18 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #830      +/-   ##
==========================================
- Coverage   95.14%   92.72%   -2.43%     
==========================================
  Files          23       23              
  Lines        1938     1938              
  Branches      319        0     -319     
==========================================
- Hits         1844     1797      -47     
  Misses         48       48              
- Partials       46       93      +47     
Flag Coverage Δ
unittests 92.72% <ø> (-2.43%) ⬇️

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.

@christianhelle christianhelle self-assigned this Dec 4, 2025
@christianhelle christianhelle added enhancement New feature, bug fix, or request .NET Pull requests that contain changes to .NET code CI/CD Build workflow labels Dec 4, 2025
@sonarqubecloud

sonarqubecloud Bot commented Dec 4, 2025

Copy link
Copy Markdown

@christianhelle
christianhelle merged commit 5844ae8 into main Dec 4, 2025
10 of 11 checks passed
@christianhelle
christianhelle deleted the tunit branch December 4, 2025 23:10
hwinther pushed a commit to hwinther/test that referenced this pull request Dec 18, 2025
Updated [refitter](https://github.com/christianhelle/refitter) from
1.7.0 to 1.7.1.

<details>
<summary>Release notes</summary>

_Sourced from [refitter's
releases](https://github.com/christianhelle/refitter/releases)._

## 1.7.1

### Implemented enhancements

- Improved handling of optional parameters
[\#​448](christianhelle/refitter#448) by
@​christianhelle
- Allow omitting certain operation headers \#​840
[\#​841](christianhelle/refitter#841) by
@​kmc059000
- Migrate unit tests from xUnit to TUnit
[\#​830](christianhelle/refitter#830) by
@​christianhelle
- Refit v9.0.2
[\#​829](christianhelle/refitter#829)
- Add .NET 10 support
[\#​822](christianhelle/refitter#822)
([christianhelle](https://github.com/christianhelle))
- Fix missing XML doc for CancellationToken
[\#​819](christianhelle/refitter#819) by
@​christianhelle
- Fix incorrect casing on multi-part form data parameters
[\#​806](christianhelle/refitter#806) by
@​christianhelle
- Optional parameters with default values
[\#​803](christianhelle/refitter#803) by
@​christianhelle
- Asana API specs strange naming
[\#​364](christianhelle/refitter#364) by
@​christianhelle

### Fixed bugs

- Using cancellation tokens with xml doc comments plus
TreatWarningsAsErrors and documentation file
[\#​817](christianhelle/refitter#817)
- Multipart form data parameters wrong casing
[\#​805](christianhelle/refitter#805)
- Use of non generic `JsonStringEnumConverter` prohibits usage of
Json-SourceGenerationContext
[\#​778](christianhelle/refitter#778)
- SourceGenerator 1.5 and newer causes build error with Visual Studio
2022 [\#​627](christianhelle/refitter#627)
- Fix string escaping, null safety, and numeric literals in optional
parameter default values
[\#​804](christianhelle/refitter#804)
- Fix typo in class name and Spectre.Console markup escaping issue
[\#​828](christianhelle/refitter#828)

### Merged pull requests

- docs: add kmc059000 as a contributor for ideas, and code
[\#​842](christianhelle/refitter#842)
([allcontributors[bot]](https://github.com/apps/allcontributors))
- Bump actions/upload-artifact from 5 to 6
[\#​838](christianhelle/refitter#838)
([dependabot[bot]](https://github.com/apps/dependabot))
- Update dependency TUnit to 1.5.37
[\#​836](christianhelle/refitter#836)
([renovate[bot]](https://github.com/apps/renovate))
- Update dotnet monorepo
[\#​834](christianhelle/refitter#834)
([renovate[bot]](https://github.com/apps/renovate))
- Update dependency TUnit to 1.5.6
[\#​833](christianhelle/refitter#833)
([renovate[bot]](https://github.com/apps/renovate))
- Update dependency TUnit to 1.5.0
[\#​832](christianhelle/refitter#832)
([renovate[bot]](https://github.com/apps/renovate))
- chore\(deps\): update dependency spectre.console.cli to 0.53.1
[\#​827](christianhelle/refitter#827)
([renovate[bot]](https://github.com/apps/renovate))
- chore\(deps\): update dependency polly to 8.6.5
[\#​826](christianhelle/refitter#826)
([renovate[bot]](https://github.com/apps/renovate))
- Bump actions/checkout from 5 to 6
[\#​825](christianhelle/refitter#825)
([dependabot[bot]](https://github.com/apps/dependabot))
- chore\(deps\): update nswag monorepo to 14.6.3
[\#​824](christianhelle/refitter#824)
([renovate[bot]](https://github.com/apps/renovate))
- chore\(deps\): update dependency microsoft.build.utilities.core to v18
[\#​821](christianhelle/refitter#821)
([renovate[bot]](https://github.com/apps/renovate))
- chore\(deps\): update dependency swashbuckle.aspnetcore to 10.0.1
[\#​820](christianhelle/refitter#820)
([renovate[bot]](https://github.com/apps/renovate))
- docs: add karoberts as a contributor for bug
[\#​818](christianhelle/refitter#818)
([allcontributors[bot]](https://github.com/apps/allcontributors))
- chore\(deps\): update dependency swashbuckle.aspnetcore to v10
[\#​816](christianhelle/refitter#816)
([renovate[bot]](https://github.com/apps/renovate))
- chore\(deps\): update dependency microsoft.extensions.http.resilience
to v10 [\#​815](christianhelle/refitter#815)
([renovate[bot]](https://github.com/apps/renovate))
- Update Spectre.Console.Cli to 0.53.0
[\#​814](christianhelle/refitter#814)
([Copilot](https://github.com/apps/copilot-swe-agent))
- chore\(deps\): update dotnet monorepo to v10 \(major\)
[\#​813](christianhelle/refitter#813)
([renovate[bot]](https://github.com/apps/renovate))
- chore\(deps\): update dependency microsoft.net.test.sdk to 18.0.1
[\#​808](christianhelle/refitter#808)
([renovate[bot]](https://github.com/apps/renovate))
- docs: add mhartmair-cubido as a contributor for bug
[\#​807](christianhelle/refitter#807)
([allcontributors[bot]](https://github.com/apps/allcontributors))

### New Contributors
* @​kmc059000 made their first contribution in
christianhelle/refitter#841

Full Changelog:
christianhelle/refitter@1.7.0...1.7.1

Commits viewable in [compare
view](christianhelle/refitter@1.7.0...1.7.1).
</details>

[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=refitter&package-manager=nuget&previous-version=1.7.0&new-version=1.7.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI/CD Build workflow enhancement New feature, bug fix, or request .NET Pull requests that contain changes to .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants