Skip to content

PropertiesComparer 32 Property Limit Error Message #4862

@Cincidial

Description

@Cincidial

When using .UsingPropertiesComparer() on a class with 32 or more properties the following error message is returned

System.NotSupportedException : No comparer found for instances of type 'x' and 'x'

(x is the same class in this case, just as an example)

This message doesn't actually tell the test writer what's going on as unless you look at the PropertiesComparer.cs in this repo there's no documentation on a max property limit. At least as far as I could find on this page

As can be seen in the file this check could return it's own enum result for a better error message.

Also, I'm wondering why there is a 32 property max (actually only 31 because a >= is used instead of a >)?
I see in that code there's an int whose 31 of 32 bits are being used as flags, but would that also work as a long so that a max of 64 properties is available instead? A list could also be used instead of bitwise operations so that there is no property limit

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions