Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed nulls for Success result #119

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

lkurzyniec
Copy link

@lkurzyniec lkurzyniec commented Apr 11, 2023

Collections should never return null. Better value for collection is just empty collection.
As a reference, you can take API - collection endpoints never return null, but empty array ([]).


Null cause problems, ie I can't do like this Assert.True(result.IsSuccessful, $"Failing Types: {string.Join("; ", result.FailingTypeNames)}");, I need Assert.True(result.IsSuccessful, $"Failing Types: {string.Join("; ", result.FailingTypeNames ?? Array.Empty<string>())}"); (reference).

NeVeSpl added a commit to NeVeSpl/NetArchTest.eNhancedEdition that referenced this pull request May 13, 2023
@BenMorris
Copy link
Owner

I recognise that returning null is regarded as a bad habit, but I'm reluctant to introduce a breaking change to the public interface at this point.

I'll keep this pull request open so it can be swept up when there's another major release - that will make it easier to signpost this kind of change so we don't break anybody's tests unnecessarily.

@lkurzyniec
Copy link
Author

Fair enough, thx.

@jgveire
Copy link

jgveire commented Apr 19, 2024

I would really like this change because the first time I used this package I got a null reference exception because I expected failing types to be an empty array. I agree with @lkurzyniec that this is a common practice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants