anchor.diff:  
   import 'package:analysis_server/plugin/protocol/protocol.dart';
   import 'package:analysis_server/src/services/correction/status.dart';
  +import 'package:analyzer/src/generated/source.dart';
   import 'package:test_reflective_loader/test_reflective_loader.dart';
   import 'package:unittest/unittest.dart';
   
  
positive.code:         expectedContextSearch: 'test(); // marker');
    }
  
    test_checkFinalConditions_shadowed_inSubClass() async {
      indexTestUnit('''
  class A {
    newName() {} // marker
  }
  class B extends A {
    test() {}
    main() {
      newName();
    }
  }
  ''');
      createRenameRefactoringAtString('test() {}');
  
negative.code:         expectedContextSearch: 'newName() {} // marker');
    }
  
    test_checkFinalConditions_shadowsSuper_MethodElement_otherLib() async {
      var libCode = r'''
  class A {
    newName() {} // marker
  }
  ''';
      indexUnit('/lib.dart', libCode);
      indexTestUnit('''
  import 'lib.dart';
  class B extends A {
    test() {}
  }
  ''');
      createRenameRefactoringAtString('test() {}');
      // check status
      refactoring.newName = 'newName';
      RefactoringStatus status = await refactoring.checkFinalConditions();
      assertRefactoringStatus(status, RefactoringProblemSeverity.ERROR,
          expectedMessage: "Renamed method will shadow method 'A.newName'.",
          expectedContextRange: new SourceRange(
              libCode.indexOf('newName() {} // marker'), 'newName'.length));
    }
  
    test_checkInitialConditions_inSDK() async {
  