code: def wait_for_service_tasks_all_unchanged(
          service_name,
          old_task_ids,
          task_predicate=None,
          timeout_sec=30
  ):
      
      try:
          time_wait(
              lambda: tasks_missing_predicate(service_name, old_task_ids, task_predicate),
              timeout_seconds=timeout_sec)
          # shouldn't have exited successfully: raise below
      except TimeoutExpired:
          return timeout_sec  # no changes occurred within timeout, as expected
      raise DCOSException("One or more of the following tasks were no longer found: {}".format(old_task_ids))
docs: Returns after verifying that NONE of old_task_ids have been removed or replaced from the service
  
          :param service_name: the service name
          :type service_name: str
          :param old_task_ids: list of original task ids as returned by get_service_task_ids
          :type old_task_ids: [str]
          :param task_predicate: filter to use when searching for tasks
          :type task_predicate: func
          :param timeout_sec: duration to wait until assuming tasks are unchanged
          :type timeout_sec: int
  
          :return: the duration waited in seconds (the timeout value)
          :rtype: int