MCPcopy Create free account
hub / github.com/fabioz/PyDev.Debugger / test_logging_api

Function test_logging_api

tests_python/test_debugger_json.py:6916–6980  ·  view source on GitHub ↗
(case_setup_multiprocessing_dap, tmpdir)

Source from the content-addressed store, hash-verified

6914
6915
6916def test_logging_api(case_setup_multiprocessing_dap, tmpdir):
6917 import threading
6918 from tests_python.debugger_unittest import AbstractWriterThread
6919
6920 log_file = str(tmpdir.join("pydevd_in_test_logging.log"))
6921
6922 def get_environ(self):
6923 env = os.environ.copy()
6924 env["TARGET_LOG_FILE"] = log_file
6925 return env
6926
6927 with case_setup_multiprocessing_dap.test_file("_debugger_case_logging.py", get_environ=get_environ) as writer:
6928 json_facade = JsonFacade(writer)
6929 json_facade.write_launch()
6930
6931 break1_line = writer.get_line_index_with_content("break on 2nd process")
6932 json_facade.write_set_breakpoints([break1_line])
6933
6934 server_socket = writer.server_socket
6935 secondary_finished_ok = [False]
6936
6937 class SecondaryProcessWriterThread(AbstractWriterThread):
6938 TEST_FILE = writer.get_main_filename()
6939 _sequence = -1
6940
6941 class SecondaryProcessThreadCommunication(threading.Thread):
6942
6943 def run(self):
6944 from tests_python.debugger_unittest import ReaderThread
6945
6946 server_socket.listen(1)
6947 self.server_socket = server_socket
6948 new_sock, addr = server_socket.accept()
6949
6950 reader_thread = ReaderThread(new_sock)
6951 reader_thread.name = " *** Multiprocess Reader Thread"
6952 reader_thread.start()
6953
6954 writer2 = SecondaryProcessWriterThread()
6955 writer2.reader_thread = reader_thread
6956 writer2.sock = new_sock
6957 json_facade2 = JsonFacade(writer2)
6958
6959 json_facade2.write_set_breakpoints(
6960 [
6961 break1_line,
6962 ]
6963 )
6964 json_facade2.write_make_initial_run()
6965
6966 json_facade2.wait_for_thread_stopped()
6967 json_facade2.write_continue()
6968 secondary_finished_ok[0] = True
6969
6970 secondary_process_thread_communication = SecondaryProcessThreadCommunication()
6971 secondary_process_thread_communication.start()
6972 time.sleep(0.1)
6973

Callers

nothing calls this directly

Calls 10

write_launchMethod · 0.95
write_set_breakpointsMethod · 0.95
JsonFacadeClass · 0.85
test_fileMethod · 0.80
joinMethod · 0.45
startMethod · 0.45
is_aliveMethod · 0.45

Tested by

no test coverage detected