old_contents: import lldb, sys
  
  class WelcomeCommand(object):
      def __init__(self, debugger, session_dict):
          pass
      
      def get_short_help(self):
          return "Just a docstring for welcome_impl\nA command that says hello to LLDB users"
          
      def __call__(self, debugger, args, exe_ctx, result):
          print >>result,  ('Hello ' + args + ', welcome to LLDB');
          return None;
  
  class TargetnameCommand(object):
      def __init__(self, debugger, session_dict):
          pass
  
      def __call__(self, debugger, args, exe_ctx, result):
          if args == 'fail':
              result.SetError('a test for error in command')
              return
          target = debugger.GetSelectedTarget()
          file = target.GetExecutable()
          if file:
              print >>result,  ('Current target ' + file.GetFilename())
          else:
              result.SetError('target.GetExecutable() failed')
      
      def get_flags(self):
          return lldb.eCommandRequiresTarget
  
  def print_wait_impl(debugger, args, result, dict):
      result.SetImmediateOutputFile(sys.stdout)
      print >>result,  ('Trying to do long task..')
      import time
      time.sleep(1)
      print >>result,  ('Still doing long task..')
      time.sleep(1)
      print >>result,  ('Done; if you saw the delays I am doing OK')
  
  def check_for_synchro(debugger, args, result, dict):
      if debugger.GetAsync() == True:
          print >>result,  ('I am running async')
      if debugger.GetAsync() == False:
          print >>result,  ('I am running sync')
  
  def takes_exe_ctx(debugger, args, exe_ctx, result, dict):
      print >>result, str(exe_ctx.GetTarget())
  
  
new_contents: import lldb, sys
  
  class WelcomeCommand(object):
      def __init__(self, debugger, session_dict):
          pass
      
      def get_short_help(self):
          return "Just a docstring for welcome_impl\nA command that says hello to LLDB users"
          
      def __call__(self, debugger, args, exe_ctx, result):
          print >>result,  ('Hello ' + args + ', welcome to LLDB');
          return None;
  
  class TargetnameCommand(object):
      def __init__(self, debugger, session_dict):
          pass
  
      def __call__(self, debugger, args, exe_ctx, result):
          target = debugger.GetSelectedTarget()
          file = target.GetExecutable()
          print >>result,  ('Current target ' + file.GetFilename())
          if args == 'fail':
              result.SetError('a test for error in command')
      
      def get_flags(self):
          return lldb.eCommandRequiresTarget
  
  def print_wait_impl(debugger, args, result, dict):
      result.SetImmediateOutputFile(sys.stdout)
      print >>result,  ('Trying to do long task..')
      import time
      time.sleep(1)
      print >>result,  ('Still doing long task..')
      time.sleep(1)
      print >>result,  ('Done; if you saw the delays I am doing OK')
  
  def check_for_synchro(debugger, args, result, dict):
      if debugger.GetAsync() == True:
          print >>result,  ('I am running async')
      if debugger.GetAsync() == False:
          print >>result,  ('I am running sync')
  
  def takes_exe_ctx(debugger, args, exe_ctx, result, dict):
      print >>result, str(exe_ctx.GetTarget())
  
  
subject: Revert r238425, it undoes the purpose of the test