Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(105)

Side by Side Diff: pkg/analysis_server/test/analysis/notification_overrides_test.dart

Issue 1610773003: Issue 25538. Fix for notification and private methods. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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.analysis.notification.overrides; 5 library test.analysis.notification.overrides;
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/constants.dart'; 10 import 'package:analysis_server/src/constants.dart';
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 fff(x) {} // A 222 fff(x) {} // A
223 } 223 }
224 class B extends A { 224 class B extends A {
225 set fff(x) {} // B 225 set fff(x) {} // B
226 } 226 }
227 '''); 227 ''');
228 await prepareOverrides(); 228 await prepareOverrides();
229 assertNoOverride('fff(x) {} // B'); 229 assertNoOverride('fff(x) {} // B');
230 } 230 }
231 231
232 test_BAD_privateByPrivate_inDifferentLib() async {
233 addFile(
234 '$testFolder/lib.dart',
235 r'''
236 class A {
237 void _m() {}
238 }
239 ''');
240 addTestFile('''
241 import 'lib.dart';
242 class B extends A {
243 void _m() {} // in B
244 }
245 ''');
246 await prepareOverrides();
247 assertNoOverride('_m() {} // in B');
248 }
249
232 test_BAD_setterByGetter() async { 250 test_BAD_setterByGetter() async {
233 addTestFile(''' 251 addTestFile('''
234 class A { 252 class A {
235 set fff(x) {} 253 set fff(x) {}
236 } 254 }
237 class B extends A { 255 class B extends A {
238 get fff => null; 256 get fff => null;
239 } 257 }
240 '''); 258 ''');
241 await prepareOverrides(); 259 await prepareOverrides();
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
507 class C extends B { 525 class C extends B {
508 m() {} // in C 526 m() {} // in C
509 } 527 }
510 '''); 528 ''');
511 await prepareOverrides(); 529 await prepareOverrides();
512 assertHasOverride('m() {} // in C'); 530 assertHasOverride('m() {} // in C');
513 assertHasSuperElement('m() {} // in A'); 531 assertHasSuperElement('m() {} // in A');
514 assertNoInterfaceMembers(); 532 assertNoInterfaceMembers();
515 } 533 }
516 534
535 test_super_method_privateByPrivate() async {
536 addTestFile('''
537 class A {
538 _m() {} // in A
539 }
540 class B extends A {
541 _m() {} // in B
542 }
543 ''');
544 await prepareOverrides();
545 assertHasOverride('_m() {} // in B');
546 assertHasSuperElement('_m() {} // in A');
547 assertNoInterfaceMembers();
548 }
549
517 test_super_method_superTypeCycle() async { 550 test_super_method_superTypeCycle() async {
518 addTestFile(''' 551 addTestFile('''
519 class A extends B { 552 class A extends B {
520 m() {} // in A 553 m() {} // in A
521 } 554 }
522 class B extends A { 555 class B extends A {
523 m() {} // in B 556 m() {} // in B
524 } 557 }
525 '''); 558 ''');
526 await prepareOverrides(); 559 await prepareOverrides();
527 // must finish 560 // must finish
528 } 561 }
529 562
530 test_super_setterBySetter() async { 563 test_super_setterBySetter() async {
531 addTestFile(''' 564 addTestFile('''
532 class A { 565 class A {
533 set fff(x) {} // in A 566 set fff(x) {} // in A
534 } 567 }
535 class B extends A { 568 class B extends A {
536 set fff(x) {} // in B 569 set fff(x) {} // in B
537 } 570 }
538 '''); 571 ''');
539 await prepareOverrides(); 572 await prepareOverrides();
540 assertHasOverride('fff(x) {} // in B'); 573 assertHasOverride('fff(x) {} // in B');
541 assertHasSuperElement('fff(x) {} // in A'); 574 assertHasSuperElement('fff(x) {} // in A');
542 assertNoInterfaceMembers(); 575 assertNoInterfaceMembers();
543 } 576 }
544 } 577 }
OLDNEW
« no previous file with comments | « pkg/analysis_server/lib/src/computer/computer_overrides.dart ('k') | pkg/analysis_server/test/analysis_abstract.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698