chore(deps): update NSubstitute to 6.2.0

Đang mở
#592 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
72/100
Loại issue
Tái cấu trúc
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
csharp
Lĩnh vực
testing

Hướng nghiên cứu

Start with Directory.Packages.props and tests/Directory.Build.props to confirm where NSubstitute is centrally versioned and used. Check that version 6.2.0 is available on NuGet, then build and run tests/CommunityToolkit.Datasync.Client.Test and tests/CommunityToolkit.Datasync.Server.Test first. Update the package version and make minimal test changes for any failures; done means all tests pass locally and in CI with the same test counts.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

dependencies Infrastructure

Part 6 of the outdated-package sweep (dotnet-outdated 4.8.1, 2026-11-05). Major upgrade of NSubstitute used across all test projects.

Current state

NSubstitute 5.3.0 in root Directory.Packages.props; referenced for every project under tests/ via tests/Directory.Build.props. Target: 6.2.0.

What changes

  • 6.0.0: targets .NET 8 / .NET Standard 2.0 (fine for us on net10.0); improved custom argument matcher support (Arg.Is accepts arg matchers); new ArgMatchers.Matching; some breaking changes for custom argument matchers.
  • 6.1.0: reverted the nullability annotations introduced in 6.0 (they caused caller problems), so the public API is non-nullable-annotated again. Avoid 6.0.x; go straight to 6.2.
  • 6.2.0: improved generic call matching (generic return-type assignability no longer used for matching), trusted NuGet publishing.
    Release notes: https://github.com/nsubstitute/NSubstitute/releases

Expected impact is small; the most likely breakage is tests that mock generic methods and relied on return-type assignability matching, or custom IArgumentMatcher implementations.

Steps

  1. Bump NSubstitute to 6.2.0 (confirm it exists on NuGet).
  2. dotnet build then dotnet test. Run first the projects most likely to use mocks heavily (tests/CommunityToolkit.Datasync.Client.Test, tests/CommunityToolkit.Datasync.Server.Test).
  3. Fix any failures with minimal test changes; do not alter production code.
  4. Dispatch build-library.yml on the fork with --ref <branch>.

Acceptance criteria

  • Tests pass with NSubstitute 6.2.0 locally and in CI, with the same test counts as before.
  • PR title: chore(deps): update NSubstitute to 6.2.0.
Ngôn ngữ chính
C#
Star
184
Fork
48
Merge trung bình
21 phút
Pull request đã merge (30 ngày)
7

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của CommunityToolkit/Datasync

Tất cả issue của CommunityToolkit/Datasync

Issue tương tự

Thêm issue về C#

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.