TEST(ImmutableConstantOpTest, FromFileStringUnimplmented) {
  const TensorShape kFileTensorShape({1});
  Env* env = Env::Default();
  auto root = Scope::NewRootScope().ExitOnError();

  string bad_file;
  TF_ASSERT_OK(CreateTempFileBadString(env, '\xe2', 128, "bad_e2", &bad_file));
  auto result =
      ops::ImmutableConst(root, DT_STRING, kFileTensorShape, bad_file);
  GraphDef graph_def;
  TF_ASSERT_OK(root.ToGraphDef(&graph_def));
  SessionOptions session_options;
  session_options.env = Env::Default();
  std::unique_ptr<Session> session(NewSession(session_options));
  ASSERT_TRUE(session != nullptr) << "Failed to create session";
  TF_ASSERT_OK(session->Create(graph_def)) << "Can't create test graph";
  std::vector<Tensor> outputs;
  // Check that the run returned error.
  EXPECT_EQ(
      session->Run({}, {result.node()->name() + ":0"}, {}, &outputs).code(),
      error::UNIMPLEMENTED);
}
The software reads data past the end, or before the beginning, of the intended buffer.