| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library test.search.element_references; | 5 library test.search.element_references; |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 | 8 |
| 9 import 'package:analysis_server/plugin/protocol/protocol.dart'; | 9 import 'package:analysis_server/plugin/protocol/protocol.dart'; |
| 10 import 'package:analysis_server/src/services/index/index.dart'; | 10 import 'package:analysis_server/src/services/index/index.dart'; |
| (...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 261 assertHasResult(SearchResultKind.DECLARATION, 'fff; // in B'); | 261 assertHasResult(SearchResultKind.DECLARATION, 'fff; // in B'); |
| 262 assertHasResult(SearchResultKind.DECLARATION, 'fff; // in C'); | 262 assertHasResult(SearchResultKind.DECLARATION, 'fff; // in C'); |
| 263 assertHasResult(SearchResultKind.WRITE, 'fff = 10;'); | 263 assertHasResult(SearchResultKind.WRITE, 'fff = 10;'); |
| 264 assertHasResult(SearchResultKind.WRITE, 'fff = 20;'); | 264 assertHasResult(SearchResultKind.WRITE, 'fff = 20;'); |
| 265 assertHasResult(SearchResultKind.WRITE, 'fff = 30;'); | 265 assertHasResult(SearchResultKind.WRITE, 'fff = 30;'); |
| 266 } | 266 } |
| 267 | 267 |
| 268 test_hierarchy_method() async { | 268 test_hierarchy_method() async { |
| 269 addTestFile(''' | 269 addTestFile(''' |
| 270 class A { | 270 class A { |
| 271 mmm() {} // in A | 271 mmm(_) {} // in A |
| 272 } | 272 } |
| 273 class B extends A { | 273 class B extends A { |
| 274 mmm() {} // in B | 274 mmm(_) {} // in B |
| 275 } | 275 } |
| 276 class C extends B { | 276 class C extends B { |
| 277 mmm() {} // in C | 277 mmm(_) {} // in C |
| 278 } | 278 } |
| 279 main(A a, B b, C c) { | 279 main(A a, B b, C c) { |
| 280 a.mmm(10); | 280 a.mmm(10); |
| 281 b.mmm(20); | 281 b.mmm(20); |
| 282 c.mmm(30); | 282 c.mmm(30); |
| 283 } | 283 } |
| 284 '''); | 284 '''); |
| 285 await findElementReferences('mmm() {} // in B', false); | 285 await findElementReferences('mmm(_) {} // in B', false); |
| 286 expect(searchElement.kind, ElementKind.METHOD); | 286 expect(searchElement.kind, ElementKind.METHOD); |
| 287 assertHasResult(SearchResultKind.INVOCATION, 'mmm(10)'); | 287 assertHasResult(SearchResultKind.INVOCATION, 'mmm(10)'); |
| 288 assertHasResult(SearchResultKind.INVOCATION, 'mmm(20)'); | 288 assertHasResult(SearchResultKind.INVOCATION, 'mmm(20)'); |
| 289 assertHasResult(SearchResultKind.INVOCATION, 'mmm(30)'); | 289 assertHasResult(SearchResultKind.INVOCATION, 'mmm(30)'); |
| 290 } | 290 } |
| 291 | 291 |
| 292 test_hierarchy_method_static() async { |
| 293 addTestFile(''' |
| 294 class A { |
| 295 static void mmm(_) {} // in A |
| 296 } |
| 297 class B extends A { |
| 298 static void mmm(_) {} // in B |
| 299 } |
| 300 class C extends B { |
| 301 static void mmm(_) {} // in C |
| 302 } |
| 303 main() { |
| 304 A.mmm(10); |
| 305 B.mmm(20); |
| 306 C.mmm(30); |
| 307 } |
| 308 '''); |
| 309 await findElementReferences('mmm(_) {} // in B', false); |
| 310 expect(searchElement.kind, ElementKind.METHOD); |
| 311 expect(results, hasLength(1)); |
| 312 assertHasResult(SearchResultKind.INVOCATION, 'mmm(20)'); |
| 313 } |
| 314 |
| 292 test_label() async { | 315 test_label() async { |
| 293 addTestFile(''' | 316 addTestFile(''' |
| 294 main() { | 317 main() { |
| 295 myLabel: | 318 myLabel: |
| 296 for (int i = 0; i < 10; i++) { | 319 for (int i = 0; i < 10; i++) { |
| 297 if (i == 2) { | 320 if (i == 2) { |
| 298 continue myLabel; // continue | 321 continue myLabel; // continue |
| 299 } | 322 } |
| 300 break myLabel; // break | 323 break myLabel; // break |
| 301 } | 324 } |
| (...skipping 405 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 707 print(vvv); | 730 print(vvv); |
| 708 } | 731 } |
| 709 '''); | 732 '''); |
| 710 Request request = new SearchFindElementReferencesParams(testFile, 0, false) | 733 Request request = new SearchFindElementReferencesParams(testFile, 0, false) |
| 711 .toRequest('0'); | 734 .toRequest('0'); |
| 712 Response response = await waitResponse(request); | 735 Response response = await waitResponse(request); |
| 713 expect(response.error, isNotNull); | 736 expect(response.error, isNotNull); |
| 714 expect(response.error.code, RequestErrorCode.NO_INDEX_GENERATED); | 737 expect(response.error.code, RequestErrorCode.NO_INDEX_GENERATED); |
| 715 } | 738 } |
| 716 } | 739 } |
| OLD | NEW |