-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
Add formatting analyzer test for param nullchecking #58936
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider adding a test where the !!
isn't properly formatted:
class MyClass
{
void MyMethod(string s !!) // <-- Extra space should be reported and fixed
{
}
}
We have such a test for the formatter itself. It wouldn't hurt to have it for the formatting analyzer too. roslyn/src/Workspaces/CSharpTest/Formatting/FormattingTests.cs Lines 5779 to 5799 in 259a9e2
I did find that we don't do the right thing in the following scenario: static void M1(string x
!!)
{
} I expected static void M1(string x
)
{
} All that said, I'd prefer to back-burner this work and possibly make it "help wanted". The important thing I wanted to confirm with this PR is that "correctly formatted" code using the feature doesn't produce formatting warnings. |
You'll likely need to force-space to 0, and set that without the flag that says only do that when on the same lien. |
Thanks for the review @davidwengier! |
* upstream/main: (1035 commits) Add missing header Mark IVSTypeScriptFormattingServiceImplementation as optional, but require it in the constructor Fix Go To Base for a symbol with a single metadata location (dotnet#58965) [EnC] Store entire spans instead of line deltas (dotnet#58831) Delete CodeAnalysisRules.ruleset (dotnet#58968) Allow xml docs to still be created when 'emit metadata only' is on. (dotnet#57667) Fix ParseVBErrorOrWarning (dotnet#47833) Update parameter nullability to match implementation Ensure CSharpUseParameterNullCheckingDiagnosticAnalyzer works with nullable parameters Add tests for issues fixed by previous PR (dotnet#58764) Update src/Features/CSharp/Portable/Completion/CompletionProviders/ExplicitInterfaceMemberCompletionProvider.CompletionSymbolDisplay.cs Disallow null checking discard parameters (dotnet#58952) Add extension method Escape type arguments Few fixes Update tests. Add Analyzers layer to CODEOWNERS Add formatting analyzer test for param nullchecking (dotnet#58936) Move reading HideAdvancedMembers option up (dotnet#58747) List patterns: Slice value is assumed to be never null (dotnet#57457) ...
Closes #58798.
Adding a test to demonstrate that the formatting analyzer itself isn't at fault here. Just the fact that we are using an old version of it in Roslyn.