@Override
 public RefactoringStatus checkNewName(String newName) {
   RefactoringStatus result = new RefactoringStatus();
   if (Objects.equal(newName, getCurrentName())) {
     result.addFatalError("Choose another name.");
   }
   return result;
 }
 public void test_checkAllConditions_fatalInitial() throws Exception {
   Refactoring refactoring = mock(RefactoringImpl.class);
   when(refactoring.checkAllConditions(any(ProgressMonitor.class))).thenCallRealMethod();
   // initial
   RefactoringStatus initialStatus = new RefactoringStatus();
   initialStatus.addFatalError("fatal-msg");
   when(refactoring.checkInitialConditions(any(ProgressMonitor.class))).thenReturn(initialStatus);
   // check all conditions
   RefactoringStatus result = refactoring.checkAllConditions(pm);
   assertTrue(result.hasFatalError());
   assertEquals("fatal-msg", result.getMessage());
   verify(refactoring, times(0)).checkFinalConditions(any(ProgressMonitor.class));
 }