bool TestNavigationManager::WaitForDesiredState() {
  if (current_state_ == desired_state_)
    return true;

  if (navigation_paused_)
    handle_->CallResumeForTesting();

  if (current_state_ < desired_state_) {
    DCHECK(!loop_runner_);
    loop_runner_ = new MessageLoopRunner();
    loop_runner_->Run();
    loop_runner_ = nullptr;
  }

  return current_state_ == desired_state_;
}

The product receives input or data, but it does not validate or incorrectly validates that the input has the properties that are required to process the data safely and correctly.