docs: def and_return_result_of(self, return_value):
          """ Causes the double to return the result of calling the provided value.
  
          :param return_value: A callable that will be invoked to determine the double's return value.
          :type return_value: any callable object
          """
          if not check_func_takes_args(return_value):
              self._return_value = lambda *args, **kwargs: return_value()
          else:
              self._return_value = return_value
  
          return self