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

Implement codefix for MSTEST0037: Use proper 'Assert' methods #4162

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

Youssef1313
Copy link
Member

@Youssef1313 Youssef1313 commented Nov 26, 2024

Fixes #3315

Copy link
Member

@Evangelink Evangelink left a comment

Choose a reason for hiding this comment

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

For the cases leading to compilation error, could we tweak the rule not to report instead?

@@ -354,10 +582,28 @@ public void MyTestMethod()
}
""";

await VerifyCS.VerifyAnalyzerAsync(
// error CS1503: Argument 1: cannot convert from 'object' to 'bool'
Copy link
Member

Choose a reason for hiding this comment

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

Shall we instead not raise? We could detect if that can be converted to the other type. I guess

Copy link
Member Author

Choose a reason for hiding this comment

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

The diagnostic is still correct IMO. It's that the codefix should be producing a cast.

@@ -397,10 +646,28 @@ public void MyTestMethod()
}
""";

await VerifyCS.VerifyAnalyzerAsync(
// error CS1503: Argument 1: cannot convert from 'object' to 'bool'
Copy link
Member

Choose a reason for hiding this comment

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

Same remark about avoiding the analyzer diagnostic instead.

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

Successfully merging this pull request may close these issues.

new Analyzer+CodeFix: recommend against wrong assertion method (e.g. Assert.IsTrue(x != null))
2 participants