dotnet / roslyn

The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.
https://docs.microsoft.com/dotnet/csharp/roslyn-sdk/
MIT License
19.02k stars 4.03k forks source link

Work items and test plan for "tuple equality" feature #22937

Closed jcouv closed 6 years ago

jcouv commented 6 years ago

Championed issue: https://github.com/dotnet/csharplang/issues/190

Various scenarios:

Open issues and test ideas:

Related SO question

jcouv commented 6 years ago

Test plan

IDE

Spec

jcouv commented 6 years ago

Tagging @AlekseyTs to do one pass of checking the marks based on tests names I provided. Thanks

jcouv commented 6 years ago

UpgradeProject: image

Highlighting: image

No Extract Local offered when tuple is typeless (correct), but Extract Method is offered (incorrect): image

Extract Local produces code with a name mismatch warning: image

Renaming of expression in tuple works: image

Redundant tuple element name is offered to be simplified: image

jcouv commented 6 years ago

@AlekseyTs Tuple equality is blocked on making progress on checking test plan.

jcouv commented 6 years ago

@AlekseyTs I've added most of the remaining tests in PR https://github.com/dotnet/roslyn/pull/25486 before the feature was merged back to dev15.7.x branch. I've update the speclet as discussed. The remaining known issues (like struct this and optimization for always/never null) are tracked in individual issues.

I'll go ahead and close this umbrella issue.