Skip to content

Conversation

@dennisdoomen
Copy link
Member

@dennisdoomen dennisdoomen commented Mar 25, 2023

  • When trying to find a property on the subject to match the one on the expectation, if a normal property exists next to an implicitly implemented one, the normal property will be selected.
  • Some tests related to explicit interface implementations assumed a dependency on whether or not RespectingDeclaredTypes and RespectingRuntimeTypes was used. But those options don't affect the subject.
  • The WithMapping construct also didn't support mapping to properties implemented through explicitly-implemented interfaces.
  • Removed the "non-private" part names since visibility is now used to find members

Note I had to extend MemberVisibility to optionally include explicitly implemented members. This could be perceived as a breaking change. But it won't affect consumers, so for now, I treat it as non-breaking.

Review
Review by commit and with whitespace changes hidden

Fixes #2146

IMPORTANT

  • If the PR touches the public API, the changes have been approved in a separate issue with the "api-approved" label.
  • The code complies with the Coding Guidelines for C#.
  • The changes are covered by unit tests which follow the Arrange-Act-Assert syntax and the naming conventions such as is used in these tests.
  • If the PR adds a feature or fixes a bug, please update the release notes with a functional description that explains what the change means to consumers of this library, which are published on the website.
  • If the PR changes the public API the changes needs to be included by running AcceptApiChanges.ps1 or AcceptApiChanges.sh.
  • If the PR affects the documentation, please include your changes in this pull request so the documentation will appear on the website.
    • Please also run ./build.sh --target spellcheck or .\build.ps1 --target spellcheck before pushing and check the good outcome

@dennisdoomen dennisdoomen force-pushed the Fix/ExplicitInterfaceImpl branch 2 times, most recently from 8bb8227 to be218f7 Compare March 26, 2023 19:43
@dennisdoomen dennisdoomen changed the title SAVEPOINT Ensure explicitly implemented members are discoverable in BeEquivalenTo Apr 1, 2023
@dennisdoomen dennisdoomen force-pushed the Fix/ExplicitInterfaceImpl branch from be218f7 to ed44bda Compare April 1, 2023 16:01
@dennisdoomen dennisdoomen changed the title Ensure explicitly implemented members are discoverable in BeEquivalenTo Ensure explicitly implemented members are discoverable in BeEquivalentTo Apr 1, 2023
@dennisdoomen dennisdoomen force-pushed the Fix/ExplicitInterfaceImpl branch from ed44bda to d773221 Compare April 1, 2023 19:01
@dennisdoomen dennisdoomen marked this pull request as ready for review June 6, 2023 19:19
@dennisdoomen dennisdoomen force-pushed the Fix/ExplicitInterfaceImpl branch 3 times, most recently from 35fdb9b to 87cfed7 Compare August 7, 2023 04:59
@dennisdoomen dennisdoomen changed the title Ensure explicitly implemented members are discoverable in BeEquivalentTo [WIP] Ensure explicitly implemented members are discoverable in BeEquivalentTo Aug 12, 2023
@dennisdoomen dennisdoomen force-pushed the Fix/ExplicitInterfaceImpl branch 3 times, most recently from b391618 to 54d795c Compare August 12, 2023 08:15
@dennisdoomen dennisdoomen marked this pull request as draft August 12, 2023 08:17
@dennisdoomen dennisdoomen changed the title [WIP] Ensure explicitly implemented members are discoverable in BeEquivalentTo Ensure explicitly implemented members are discoverable in BeEquivalentTo Aug 12, 2023
@coveralls
Copy link

coveralls commented Aug 12, 2023

Pull Request Test Coverage Report for Build 5847999939

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 53 of 53 (100.0%) changed or added relevant lines in 9 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.02%) to 97.246%

Totals Coverage Status
Change from base Build 5847856180: 0.02%
Covered Lines: 12920
Relevant Lines: 13162

💛 - Coveralls

@dennisdoomen dennisdoomen force-pushed the Fix/ExplicitInterfaceImpl branch 4 times, most recently from 13452cc to 31c4678 Compare August 12, 2023 11:20
@dennisdoomen dennisdoomen marked this pull request as ready for review August 12, 2023 11:25
@dennisdoomen dennisdoomen requested a review from jnyrup August 12, 2023 11:26
@dennisdoomen dennisdoomen self-assigned this Aug 12, 2023
@dennisdoomen dennisdoomen force-pushed the Fix/ExplicitInterfaceImpl branch 2 times, most recently from 20c998d to 279656a Compare August 13, 2023 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Explicitly implemented properties on the subject are not found during object graph comparison

5 participants