@@ -75,6 +75,56 @@ Private Sub Bar()
75
75
}
76
76
}
77
77
78
+ [ Category ( "Commands" ) ]
79
+ [ Test ]
80
+ //See issue #5277 at https://github.com/rubberduck-vba/Rubberduck/issues/5277
81
+ public void FindAllReferences_ArraySelected_ReturnsCorrectNumberIgnoringArrayAccesses ( )
82
+ {
83
+ const string inputCode =
84
+ @"
85
+ Private Sub Bar()
86
+ Dim arr(0 To 1) As Variant
87
+ arr(1) = arr(1)
88
+ End Sub" ;
89
+
90
+ var vbe = MockVbeBuilder . BuildFromSingleStandardModule ( inputCode , out _ , new Selection ( 4 , 6 , 4 , 6 ) ) ;
91
+ using ( var state = MockParser . CreateAndParse ( vbe . Object ) )
92
+ {
93
+ var vm = new SearchResultsWindowViewModel ( ) ;
94
+ var service = ArrangeFindAllReferencesService ( state , vm ) ;
95
+ var command = ArrangeFindAllReferencesCommand ( state , vbe , vm , service ) ;
96
+
97
+ command . Execute ( null ) ;
98
+
99
+ Assert . AreEqual ( 2 , vm . Tabs [ 0 ] . SearchResults . Count ) ;
100
+ }
101
+ }
102
+
103
+ [ Category ( "Commands" ) ]
104
+ [ Test ]
105
+ //See issue #5277 at https://github.com/rubberduck-vba/Rubberduck/issues/5277
106
+ public void FindAllReferences_ReDimDeclaredArraySelected_ReturnsCorrectNumberIgnoringArrayAccesses ( )
107
+ {
108
+ const string inputCode =
109
+ @"
110
+ Private Sub Bar()
111
+ ReDim arr(0 To 1)
112
+ arr(1) = arr(1)
113
+ End Sub" ;
114
+
115
+ var vbe = MockVbeBuilder . BuildFromSingleStandardModule ( inputCode , out _ , new Selection ( 4 , 6 , 4 , 6 ) ) ;
116
+ using ( var state = MockParser . CreateAndParse ( vbe . Object ) )
117
+ {
118
+ var vm = new SearchResultsWindowViewModel ( ) ;
119
+ var service = ArrangeFindAllReferencesService ( state , vm ) ;
120
+ var command = ArrangeFindAllReferencesCommand ( state , vbe , vm , service ) ;
121
+
122
+ command . Execute ( null ) ;
123
+
124
+ Assert . AreEqual ( 3 , vm . Tabs [ 0 ] . SearchResults . Count ) ;
125
+ }
126
+ }
127
+
78
128
[ Category ( "Commands" ) ]
79
129
[ Test ]
80
130
public void FindAllReferences_NoResults_DisplayMessageBox ( )
0 commit comments