Skip to content

Commit d3f4310

Browse files
committed
C#: Add cs/missed-readonly-modifier test for assigning private field in argument of same type.
1 parent cf94e60 commit d3f4310

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

csharp/ql/test/query-tests/Language Abuse/MissedReadonlyOpportunity/MissedReadonlyOpportunity.cs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,24 @@ public int Mutate()
3939
return x;
4040
}
4141
}
42+
43+
class Tree
44+
{
45+
private Tree? Parent;
46+
private Tree? Left; // $ Alert
47+
private readonly Tree? Right;
48+
49+
public Tree(Tree left, Tree right)
50+
{
51+
this.Left = left;
52+
this.Right = right;
53+
left.Parent = this;
54+
right.Parent = this;
55+
}
56+
57+
public Tree()
58+
{
59+
Left = null;
60+
Right = null;
61+
}
62+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
#select
12
| MissedReadonlyOpportunity.cs:3:16:3:19 | Bad1 | Field 'Bad1' can be 'readonly'. |
23
| MissedReadonlyOpportunity.cs:4:14:4:17 | Bad2 | Field 'Bad2' can be 'readonly'. |
4+
| MissedReadonlyOpportunity.cs:45:19:45:24 | Parent | Field 'Parent' can be 'readonly'. |
5+
| MissedReadonlyOpportunity.cs:46:19:46:22 | Left | Field 'Left' can be 'readonly'. |
36
| MissedReadonlyOpportunityBad.cs:3:9:3:13 | Field | Field 'Field' can be 'readonly'. |
7+
testFailures
8+
| MissedReadonlyOpportunity.cs:45:19:45:24 | Field 'Parent' can be 'readonly'. | Unexpected result: Alert |

0 commit comments

Comments
 (0)