docstr: Full coverage for do_debug without capturing.
  
  This is very similar to test_pdb_interaction_continue_recursive in general,
  but mocks out ``pdb.set_trace`` for providing more coverage.
docstr_tok: ["Full","coverage","for","do_debug","without","capturing",".","This","is","very","similar","to","test_pdb_interaction_continue_recursive","in","general",",","but","mocks","out","``","pdb.set_trace","``","for","providing","more","coverage","."]
code: def test_pdb_continue_with_recursive_debug(
      self, capture_arg, pytester: Pytester
  ) -> None:
      """Full coverage for do_debug without capturing.
  
      This is very similar to test_pdb_interaction_continue_recursive in general,
      but mocks out ``pdb.set_trace`` for providing more coverage.
      """
      p1 = pytester.makepyfile(
          """
              try:
                  input = raw_input
              except NameError:
                  pass
  
              def set_trace():
                  __import__('pdb').set_trace()
  
              def test_1(monkeypatch):
                  import _pytest.debugging
  
                  class pytestPDBTest(_pytest.debugging.pytestPDB):
                      @classmethod
                      def set_trace(cls, *args, **kwargs):
                          # Init PytestPdbWrapper to handle capturing.
                          _pdb = cls._init_pdb("set_trace", *args, **kwargs)
  
                          # Mock out pdb.Pdb.do_continue.
                          import pdb
                          pdb.Pdb.do_continue = lambda self, arg: None
  
                          print("===" + " SET_TRACE ===")
                          assert input() == "debug set_trace()"
  
                          # Simulate PytestPdbWrapper.do_debug
                          cls._recursive_debug += 1
                          print("ENTERING RECURSIVE DEBUGGER")
                          print("===" + " SET_TRACE_2 ===")
  
                          assert input() == "c"
                          _pdb.do_continue("")
                          print("===" + " SET_TRACE_3 ===")
  
                          # Simulate PytestPdbWrapper.do_debug
                          print("LEAVING RECURSIVE DEBUGGER")
                          cls._recursive_debug -= 1
  
                          print("===" + " SET_TRACE_4 ===")
                          assert input() == "c"
                          _pdb.do_continue("")
  
                      def do_continue(self, arg):
                          print("=== do_continue")
  
                  monkeypatch.setattr(_pytest.debugging, "pytestPDB", pytestPDBTest)
  
                  import pdb
                  monkeypatch.setattr(pdb, "set_trace", pytestPDBTest.set_trace)
  
                  set_trace()
          """
      )
      child = pytester.spawn_pytest(f"--tb=short {p1} {capture_arg}")
      child.expect("=== SET_TRACE ===")
      before = child.before.decode("utf8")
      if not capture_arg:
          assert (
              ">>> PDB set_trace (IO-capturing turned off) >>>"
              in before
          )
      else:
          assert ">>> PDB set_trace >>>" in before
      child.sendline("debug set_trace()")
      child.expect("=== SET_TRACE_2 ===")
      before = child.before.decode("utf8")
      assert "\r\nENTERING RECURSIVE DEBUGGER\r\n" in before
      child.sendline("c")
      child.expect("=== SET_TRACE_3 ===")
  
      # No continue message with recursive debugging.
      before = child.before.decode("utf8")
      assert ">>> PDB continue " not in before
  
      child.sendline("c")
      child.expect("=== SET_TRACE_4 ===")
      before = child.before.decode("utf8")
      assert "\r\nLEAVING RECURSIVE DEBUGGER\r\n" in before
      child.sendline("c")
      rest = child.read().decode("utf8")
      if not capture_arg:
          assert "> PDB continue (IO-capturing resumed) >" in rest
      else:
          assert "> PDB continue >" in rest
      assert "= 1 passed in" in rest
  
imports: import os
  import sys
  from typing import List
  import _pytest._code
  import pytest
  from _pytest.debugging import _validate_usepdb_cls
  from _pytest.monkeypatch import MonkeyPatch
  from _pytest.pytester import Pytester
label_desc: Use image node_id 30 for calling the TestPDB obj's underlying member method code with example usage: obj.test_pdb_continue_with_recursive_debug(capture_arg, pytester) without return types