code: def test_create_or_load_study_no_study_config_with_404_raises_ValueError(
      self, mock_discovery
  ):
      mock_request = mock.MagicMock()
      mock_request.execute.side_effect = errors.HttpError(
          httplib2.Response(info={"status": 404}), b""
      )
      mock_get_study = mock.MagicMock()
      mock_get_study.return_value = mock_request
      mock_discovery.build_from_document.return_value.projects().locations().studies().get = (
          mock_get_study
      )
  
      with self.assertRaisesRegex(
          ValueError,
          "GetStudy failed. Study not found: {}.".format(
              self._study_id
          ),
      ):
          vizier_client.create_or_load_study(
              project_id=self._project_id,
              region=self._region,
              study_id=self._study_id,
          )
  
      mock_get_study.assert_called_with(
          name="projects/{}/locations/{}/studies/{}".format(
              self._project_id, self._region, self._study_id
          )
      )
  
imports: from googleapiclient import errors
  import httplib2
  import mock
  import tensorflow
  from tensorflow_cloud.tuner import vizier_client
label_desc: Use image node_id 4 for calling the VizierClientTest obj's underlying member method code with example usage: obj.test_create_or_load_study_no_study_config_with_404_raises_ValueError(mock_discovery) without return types