code: def testDoNotBlessed(self, mock_runner, _):
      self._model_blessing.uri = os.path.join(
          self._source_data_dir, "model_validator/not_blessed"
      )
      self._model_blessing.set_int_custom_property("blessed", 0)
      mock_runner.get_service_name_and_api_version.return_value = (
          "ml",
          "v1",
      )
      self._executor.Do(
          self._input_dict,
          self._output_dict,
          self._serialize_custom_config_under_test(),
      )
      self.assertNotPushed()
      mock_runner.deploy_model_for_aip_prediction.assert_not_called()
  
imports: import copy
  import os
  from typing import Any, Dict
  from unittest import mock
  import tensorflow
  from tfx.dsl.io import fileio
  from tfx.extensions.google_cloud_ai_platform import constants
  from tfx.extensions.google_cloud_ai_platform.pusher import executor
  from tfx.types import standard_artifacts
  from tfx.types import standard_component_specs
  from tfx.utils import json_utils
  from tfx.utils import name_utils
  from tfx.utils import telemetry_utils
label_desc: Use image node_id 9 for calling the ExecutorTest obj's underlying member method code with example usage: obj.testDoNotBlessed(mock_runner, _) without return types