code: def test_missing_ending_boundary(self):
      source = textwrap.dedent(
          """\
              To: 1@harrydomain4.com
              Subject: Fwd: 1
              MIME-Version: 1.0
              Content-Type: multipart/alternative;
               boundary="------------000101020201080900040301"
  
              --------------000101020201080900040301
              Content-Type: text/plain; charset=ISO-8859-1
              Content-Transfer-Encoding: 7bit
  
              Alternative 1
  
              --------------000101020201080900040301
              Content-Type: text/html; charset=ISO-8859-1
              Content-Transfer-Encoding: 7bit
  
              Alternative 2
  
              """
      )
      with self._raise_point(errors.CloseBoundaryNotFoundDefect):
          msg = self._str_msg(source)
      if self.raise_expected:
          return
      self.assertEqual(len(msg.get_payload()), 2)
      self.assertEqual(
          msg.get_payload(1).get_payload(), "Alternative 2\n"
      )
      self.assertDefectsEqual(
          self.get_defects(msg), [errors.CloseBoundaryNotFoundDefect]
      )
  
imports: import textwrap
  import unittest
  import contextlib
  from email import policy
  from email import errors
  from test.test_email import TestEmailBase
label_desc: Use image node_id 14 for calling the TestDefectsBase obj's underlying member method code with example usage: obj.test_missing_ending_boundary() without return types