code: def test_read_blob_error(self):
      def fake_handler(req):
          del req  # unused
          yield data_provider_pb2.ReadBlobResponse(data=b"hello wo"),
          raise _grpc_error(grpc.StatusCode.NOT_FOUND, "it ran away!")
  
      self.stub.ReadBlob.side_effect = fake_handler
  
      with self.assertRaisesRegex(errors.NotFoundError, "it ran away!"):
          self.provider.read_blob(self.ctx, blob_key="myblob")
  
imports: from unittest import mock
  import grpc
  import grpc_testing
  import numpy
  from tensorboard import errors
  from tensorboard import test
  from tensorboard import context
  from tensorboard.data import grpc_provider
  from tensorboard.data import provider
  from tensorboard.data.proto import data_provider_pb2
  from tensorboard.data.proto import data_provider_pb2_grpc
  from tensorboard.util import tensor_util
label_desc: Use image node_id 15 for calling the GrpcDataProviderTest obj's underlying member method code with example usage: obj.test_read_blob_error() without return types