code: def testStateBasedSentenceBreaker(
      self, test_description, doc, expected_fragment_text
  ):
      input = constant_op.constant(
          doc
      )  # pylint: disable=redefined-builtin
      sentence_breaker = (
          state_based_sentence_breaker_op.StateBasedSentenceBreaker()
      )
      (
          fragment_text,
          fragment_starts,
          fragment_ends,
      ) = sentence_breaker.break_sentences_with_offsets(input)
  
      texts, starts, ends = self.evaluate(
          (fragment_text, fragment_starts, fragment_ends)
      )
      self.assertAllEqual(expected_fragment_text, fragment_text)
      for d, text, start, end in zip(
          doc, texts.to_list(), starts.to_list(), ends.to_list()
      ):
          # broadcast d to match start/end's shape
          start = constant_op.constant(start)
          end = constant_op.constant(end)
          d = array_ops.broadcast_to(d, start.shape)
          self.assertAllEqual(
              string_ops.substr(d, start, end - start), text
          )
  
file_path: text/tensorflow_text/python/ops/state_based_sentence_breaker_op_test.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from absl.testing import parameterized
  import numpy
  import tensorflow
  import tensorflow_text
  from tensorflow.lite.python import interpreter
  from tensorflow.python.framework import constant_op
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import string_ops
  from tensorflow.python.platform import test
  from tensorflow_text.python.ops import state_based_sentence_breaker_op
label_desc: Use image node_id 1 for calling the SentenceFragmenterTestCasesV2 obj's underlying member method code with example usage: obj.testStateBasedSentenceBreaker(test_description, doc, expected_fragment_text) without return types