npm run test:unittests -- --grep='Debugging' > python@2022.15.0-dev test:unittests > mocha --config ./build/.mocha.unittests.json "--grep=Debugging" Debugging - Adapter Factory and logger Registration ✔ Register Debug adapter factory ✔ Register a disposable item Debugging - Adapter Factory ✔ Return the value of configuration.pythonPath as the current python path if it exists ✔ Return the path of the active interpreter as the current python path, it exists and configuration.pythonPath is not defined ✔ Return the path of the first available interpreter as the current python path, configuration.pythonPath is not defined and there is no active interpreter ✔ Display a message if no python interpreter is set ✔ Return Debug Adapter server if request is "attach", and port is specified directly ✔ Return Debug Adapter server if request is "attach", and connect is specified ✔ Return Debug Adapter executable if request is "attach", and listen is specified ✔ Throw error if request is "attach", and neither port, processId, listen, nor connect is specified ✔ Pass the --log-dir argument to debug adapter if configuration.logToFile is set ✔ Don't pass the --log-dir argument to debug adapter if configuration.logToFile is not set ✔ Don't pass the --log-dir argument to debugger if configuration.logToFile is set to false ✔ Send attach to local process telemetry if attaching to a local process ✔ Don't send any telemetry if not attaching to a local process ✔ Use "debugAdapterPath" when specified ✔ Use "debugAdapterPython" when specified ✔ Do not use "python" to spawn the debug adapter Debugging - Session Logging ✔ Create logger using session without logToFile ✔ Create logger using session with logToFile set to false ✔ Create logger using session with logToFile set to true Debugging - Outdated Debugger Prompt tests. ✔ Show prompt when attaching to ptvsd, more info is NOT clicked ✔ Show prompt when attaching to ptvsd, more info is clicked ✔ Don't show prompt attaching to debugpy ✔ Don't show prompt when non-telemetry events are seen: {"seq":1,"type":"request","command":"runInTerminal","arguments":{"cwd":"","args":[""]}} ✔ Don't show prompt when non-telemetry events are seen: {"seq":1,"type":"event","event":"continued","body":{"threadId":1,"allThreadsContinued":true}} ✔ Don't show prompt when non-telemetry events are seen: {"seq":1,"type":"event","event":"output","body":{"category":"stdout","output":"ptvsd"}} Debugging - Banner ✔ Browser is displayed when launching service along with debugger launch counter ✔ users are selected 10% of the time (random: 0) ✔ users are selected 10% of the time (random: 1) ✔ users are selected 10% of the time (random: 2) ✔ users are selected 10% of the time (random: 3) ✔ users are selected 10% of the time (random: 4) ✔ users are selected 10% of the time (random: 5) ✔ users are selected 10% of the time (random: 6) ✔ users are selected 10% of the time (random: 7) ✔ users are selected 10% of the time (random: 8) ✔ users are selected 10% of the time (random: 9) ✔ users are selected 10% of the time (random: 10) ✔ users are selected 10% of the time (random: 11) ✔ users are selected 10% of the time (random: 12) ✔ users are selected 10% of the time (random: 13) ✔ users are selected 10% of the time (random: 14) ✔ users are selected 10% of the time (random: 15) ✔ users are selected 10% of the time (random: 16) ✔ users are selected 10% of the time (random: 17) ✔ users are selected 10% of the time (random: 18) ✔ users are selected 10% of the time (random: 19) ✔ users are selected 10% of the time (random: 20) ✔ users are selected 10% of the time (random: 21) ✔ users are selected 10% of the time (random: 22) ✔ users are selected 10% of the time (random: 23) ✔ users are selected 10% of the time (random: 24) ✔ users are selected 10% of the time (random: 25) ✔ users are selected 10% of the time (random: 26) ✔ users are selected 10% of the time (random: 27) ✔ users are selected 10% of the time (random: 28) ✔ users are selected 10% of the time (random: 29) ✔ users are selected 10% of the time (random: 30) ✔ users are selected 10% of the time (random: 31) ✔ users are selected 10% of the time (random: 32) ✔ users are selected 10% of the time (random: 33) ✔ users are selected 10% of the time (random: 34) ✔ users are selected 10% of the time (random: 35) ✔ users are selected 10% of the time (random: 36) ✔ users are selected 10% of the time (random: 37) ✔ users are selected 10% of the time (random: 38) ✔ users are selected 10% of the time (random: 39) ✔ users are selected 10% of the time (random: 40) ✔ users are selected 10% of the time (random: 41) ✔ users are selected 10% of the time (random: 42) ✔ users are selected 10% of the time (random: 43) ✔ users are selected 10% of the time (random: 44) ✔ users are selected 10% of the time (random: 45) ✔ users are selected 10% of the time (random: 46) ✔ users are selected 10% of the time (random: 47) ✔ users are selected 10% of the time (random: 48) ✔ users are selected 10% of the time (random: 49) ✔ users are selected 10% of the time (random: 50) ✔ users are selected 10% of the time (random: 51) ✔ users are selected 10% of the time (random: 52) ✔ users are selected 10% of the time (random: 53) ✔ users are selected 10% of the time (random: 54) ✔ users are selected 10% of the time (random: 55) ✔ users are selected 10% of the time (random: 56) ✔ users are selected 10% of the time (random: 57) ✔ users are selected 10% of the time (random: 58) ✔ users are selected 10% of the time (random: 59) ✔ users are selected 10% of the time (random: 60) ✔ users are selected 10% of the time (random: 61) ✔ users are selected 10% of the time (random: 62) ✔ users are selected 10% of the time (random: 63) ✔ users are selected 10% of the time (random: 64) ✔ users are selected 10% of the time (random: 65) ✔ users are selected 10% of the time (random: 66) ✔ users are selected 10% of the time (random: 67) ✔ users are selected 10% of the time (random: 68) ✔ users are selected 10% of the time (random: 69) ✔ users are selected 10% of the time (random: 70) ✔ users are selected 10% of the time (random: 71) ✔ users are selected 10% of the time (random: 72) ✔ users are selected 10% of the time (random: 73) ✔ users are selected 10% of the time (random: 74) ✔ users are selected 10% of the time (random: 75) ✔ users are selected 10% of the time (random: 76) ✔ users are selected 10% of the time (random: 77) ✔ users are selected 10% of the time (random: 78) ✔ users are selected 10% of the time (random: 79) ✔ users are selected 10% of the time (random: 80) ✔ users are selected 10% of the time (random: 81) ✔ users are selected 10% of the time (random: 82) ✔ users are selected 10% of the time (random: 83) ✔ users are selected 10% of the time (random: 84) ✔ users are selected 10% of the time (random: 85) ✔ users are selected 10% of the time (random: 86) ✔ users are selected 10% of the time (random: 87) ✔ users are selected 10% of the time (random: 88) ✔ users are selected 10% of the time (random: 89) ✔ users are selected 10% of the time (random: 90) ✔ users are selected 10% of the time (random: 91) ✔ users are selected 10% of the time (random: 92) ✔ users are selected 10% of the time (random: 93) ✔ users are selected 10% of the time (random: 94) ✔ users are selected 10% of the time (random: 95) ✔ users are selected 10% of the time (random: 96) ✔ users are selected 10% of the time (random: 97) ✔ users are selected 10% of the time (random: 98) ✔ users are selected 10% of the time (random: 99) ✔ user selection does not change (random: 0) ✔ user selection does not change (random: 10) ✔ Increment Debugger Launch Counter when debug session starts ✔ Do not Increment Debugger Launch Counter when debug session starts and Banner is disabled ✔ shouldShow must return false when Banner is disabled ✔ shouldShow must return false when Banner is enabled and debug counter is not same as threshold ✔ shouldShow must return true when Banner is enabled and debug counter is same as threshold ✔ show must be invoked when shouldShow returns true ✔ show must not be invoked the second time after dismissing the message ✔ Disabling banner must store value of 'false' in global store Debugging - Configuration Service ✔ Should use attach resolver when passing attach config ✔ Should use launch resolver when passing launch config with request=launch ✔ Should use launch resolver when passing launch config with request=undefined ✔ Picker should be displayed ✔ Existing Configuration items must be removed before displaying picker ✔ Ensure generated config is returned ✔ Ensure `undefined` is returned if QuickPick is cancelled ✔ Use cached debug configuration Debugging - launch.json Completion Provider ✔ Activation will register the completion provider ✔ Cannot provide completions for non launch.json files ✔ Cannot provide completions when there is no configurations section in json ✔ Cannot provide completions when cursor position is not in configurations array ✔ Cannot provide completions when cursor position is in an empty configurations array ✔ No Completions for non launch.json ✔ No Completions for files ending with launch.json ✔ Get Completions Debugging - launch.json Updater Service ✔ Activation will register the required commands ✔ Configuration Array is detected as being empty ✔ Configuration Array is not empty ✔ Cursor is not positioned in the configurations array ✔ Cursor is positioned in the empty configurations array ✔ Cursor is positioned before an item in the configurations array ✔ Cursor is positioned before an item in the middle of the configurations array ✔ Cursor is positioned after an item in the configurations array ✔ Cursor is positioned after an item in the middle of the configurations array ✔ Text to be inserted must be prefixed with a comma ✔ Text to be inserted must not be prefixed with a comma (as a comma already exists) ✔ Text to be inserted must be suffixed with a comma ✔ Text to be inserted must not be prefixed nor suffixed with commas ✔ When inserting the debug config into the json file format the document ✔ No changes to configuration if there is not active document ✔ No changes to configuration if the active document is not same as the document passed in ✔ No changes to configuration if cancellation token has been cancelled ✔ No changes to configuration if no configuration items are returned ✔ Changes are made to the configuration ✔ If cursor is at the begining of line 1 then there is no comma before cursor ✔ If cursor is positioned after some text (not a comma) then detect this ✔ If cursor is positioned after a comma then detect this ✔ If cursor is positioned in an empty line and previous line ends with comma, then detect this ✔ If cursor is positioned in an empty line and previous line does not end with comma, then detect this Debugging - Configuration Provider Django ✔ getManagePyPath should return undefined if file doesn't exist ✔ getManagePyPath should file path ✔ Resolve variables (with resource) ✔ Validation of path should return errors if path is undefined ✔ Validation of path should return errors if path is empty ✔ Validation of path should return errors if resolved path is empty ✔ Validation of path should return errors if resolved path doesn't exist ✔ Validation of path should return errors if resolved path is non-python ✔ Validation of path should return errors if resolved path is python ✔ Launch JSON with selected managepy path ✔ Launch JSON with default managepy path Debugging - Configuration Provider FastAPI ✔ getApplicationPath should return undefined if file doesn't exist ✔ getApplicationPath should find path ✔ Launch JSON with valid python path ✔ Launch JSON with selected app path Debugging - Configuration Provider File ✔ Launch JSON with default managepy path Debugging - Configuration Provider Flask ✔ getApplicationPath should return undefined if file doesn't exist ✔ getApplicationPath should file path ✔ Launch JSON with valid python path ✔ Launch JSON with selected app path ✔ Launch JSON with default managepy path Debugging - Configuration Provider Module ✔ Launch JSON with default module name ✔ Launch JSON with selected module name Debugging - Configuration Provider File ✔ Launch JSON with default process id Debugging - Configuration Provider Pyramid ✔ getDevelopmentIniPath should return undefined if file doesn't exist ✔ getDevelopmentIniPath should file path ✔ Resolve variables (with resource) ✔ Validation of path should return errors if path is undefined ✔ Validation of path should return errors if path is empty ✔ Validation of path should return errors if resolved path is empty ✔ Validation of path should return errors if resolved path doesn't exist ✔ Validation of path should return errors if resolved path is non-ini ✔ Validation of path should not return errors if resolved path is ini ✔ Launch JSON with valid ini path ✔ Launch JSON with selected ini path ✔ Launch JSON with default ini path Debugging - Configuration Provider Remote Attach ✔ Configure port will display prompt ✔ Configure port will default to 5678 if entered value is not a number ✔ Configure port will default to 5678 ✔ Configure port will use user selected value ✔ Launch JSON with default host name ✔ Launch JSON with user defined host name Debugging - Config Resolver attach, OS = Windows ✔ Defaults should be returned when an empty object is passed with a Workspace Folder and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and no active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and non python file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, with a workspace and an active python file ✔ Default host should not be added if connect is available. ✔ Default host should not be added if listen is available. ✔ Ensure 'localRoot' is left unaltered ✔ Ensure path mappings are automatically added when host is 'localhost' Ensure drive letter is lower cased for local path mappings on Windows when host is 'localhost' Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'localhost' Ensure drive letter is lower cased for local path mappings on Windows when host is 'localhost' and with existing path mappings Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'localhost' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is 'localhost' ✔ Ensure path mappings are automatically added when host is 'LOCALHOST' Ensure drive letter is lower cased for local path mappings on Windows when host is 'LOCALHOST' Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'LOCALHOST' Ensure drive letter is lower cased for local path mappings on Windows when host is 'LOCALHOST' and with existing path mappings Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'LOCALHOST' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is 'LOCALHOST' ✔ Ensure path mappings are automatically added when host is '127.0.0.1' Ensure drive letter is lower cased for local path mappings on Windows when host is '127.0.0.1' Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '127.0.0.1' Ensure drive letter is lower cased for local path mappings on Windows when host is '127.0.0.1' and with existing path mappings Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '127.0.0.1' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is '127.0.0.1' ✔ Ensure path mappings are automatically added when host is '::1' Ensure drive letter is lower cased for local path mappings on Windows when host is '::1' Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '::1' Ensure drive letter is lower cased for local path mappings on Windows when host is '::1' and with existing path mappings Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '::1' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is '::1' ✔ Ensure path mappings are not automatically added when host is '192.168.1.123' ✔ Ensure path mappings are not automatically added when host is 'don.debugger.com' ✔ Ensure 'localRoot' and 'remoteRoot' is used ✔ Ensure 'localRoot' and 'remoteRoot' is used ✔ Ensure 'remoteRoot' is left unaltered ✔ Ensure 'port' is left unaltered ✔ Ensure 'debugOptions' are left unaltered ✔ Ensure justMyCode property is correctly derived from debugStdLib Debugging - Config Resolver attach, OS = OSX ✔ Defaults should be returned when an empty object is passed with a Workspace Folder and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and no active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and non python file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, with a workspace and an active python file ✔ Default host should not be added if connect is available. ✔ Default host should not be added if listen is available. ✔ Ensure 'localRoot' is left unaltered ✔ Ensure path mappings are automatically added when host is 'localhost' Ensure drive letter is lower cased for local path mappings on Windows when host is 'localhost' ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'localhost' Ensure drive letter is lower cased for local path mappings on Windows when host is 'localhost' and with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'localhost' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is 'localhost' ✔ Ensure path mappings are automatically added when host is 'LOCALHOST' Ensure drive letter is lower cased for local path mappings on Windows when host is 'LOCALHOST' ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'LOCALHOST' Ensure drive letter is lower cased for local path mappings on Windows when host is 'LOCALHOST' and with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'LOCALHOST' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is 'LOCALHOST' ✔ Ensure path mappings are automatically added when host is '127.0.0.1' Ensure drive letter is lower cased for local path mappings on Windows when host is '127.0.0.1' ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '127.0.0.1' Ensure drive letter is lower cased for local path mappings on Windows when host is '127.0.0.1' and with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '127.0.0.1' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is '127.0.0.1' ✔ Ensure path mappings are automatically added when host is '::1' Ensure drive letter is lower cased for local path mappings on Windows when host is '::1' ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '::1' Ensure drive letter is lower cased for local path mappings on Windows when host is '::1' and with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '::1' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is '::1' ✔ Ensure path mappings are not automatically added when host is '192.168.1.123' ✔ Ensure path mappings are not automatically added when host is 'don.debugger.com' ✔ Ensure 'localRoot' and 'remoteRoot' is used ✔ Ensure 'localRoot' and 'remoteRoot' is used ✔ Ensure 'remoteRoot' is left unaltered ✔ Ensure 'port' is left unaltered ✔ Ensure 'debugOptions' are left unaltered ✔ Ensure justMyCode property is correctly derived from debugStdLib Debugging - Config Resolver attach, OS = Linux ✔ Defaults should be returned when an empty object is passed with a Workspace Folder and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and no active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and non python file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, with a workspace and an active python file ✔ Default host should not be added if connect is available. ✔ Default host should not be added if listen is available. ✔ Ensure 'localRoot' is left unaltered ✔ Ensure path mappings are automatically added when host is 'localhost' Ensure drive letter is lower cased for local path mappings on Windows when host is 'localhost' ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'localhost' Ensure drive letter is lower cased for local path mappings on Windows when host is 'localhost' and with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'localhost' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is 'localhost' ✔ Ensure path mappings are automatically added when host is 'LOCALHOST' Ensure drive letter is lower cased for local path mappings on Windows when host is 'LOCALHOST' ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'LOCALHOST' Ensure drive letter is lower cased for local path mappings on Windows when host is 'LOCALHOST' and with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is 'LOCALHOST' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is 'LOCALHOST' ✔ Ensure path mappings are automatically added when host is '127.0.0.1' Ensure drive letter is lower cased for local path mappings on Windows when host is '127.0.0.1' ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '127.0.0.1' Ensure drive letter is lower cased for local path mappings on Windows when host is '127.0.0.1' and with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '127.0.0.1' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is '127.0.0.1' ✔ Ensure path mappings are automatically added when host is '::1' Ensure drive letter is lower cased for local path mappings on Windows when host is '::1' ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '::1' Ensure drive letter is lower cased for local path mappings on Windows when host is '::1' and with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when host is '::1' and with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive when host is '::1' ✔ Ensure path mappings are not automatically added when host is '192.168.1.123' ✔ Ensure path mappings are not automatically added when host is 'don.debugger.com' ✔ Ensure 'localRoot' and 'remoteRoot' is used ✔ Ensure 'localRoot' and 'remoteRoot' is used ✔ Ensure 'remoteRoot' is left unaltered ✔ Ensure 'port' is left unaltered ✔ Ensure 'debugOptions' are left unaltered ✔ Ensure justMyCode property is correctly derived from debugStdLib Debugging - Config Resolver ✔ Program should return filepath of active editor if file is python ✔ Program should return undefined if active file is not python ✔ Program should return undefined if there is no active editor ✔ Should get workspace folder when workspace folder is provided ✔ Should get directory of active program when there are not workspace folders ✔ Should get directory of active program when there are 0 workspace folders ✔ Should return uri of workspace folder if there is only one workspace folder ✔ Should return uri of workspace folder corresponding to program if there is more than one workspace folder ✔ Should return undefined when program does not belong to any of the workspace folders ✔ Do nothing if debug configuration is undefined ✔ pythonPath in debug config must point to pythonPath in settings if pythonPath in config is not set ✔ pythonPath in debug config must point to pythonPath in settings if pythonPath in config is ${command:python.interpreterPath} ✔ Local host = true for localhost ✔ Local host = true for 127.0.0.1 ✔ Local host = true for ::1 ✔ Local host = false for 127.0.0.2 ✔ Local host = false for 156.1.2.3 ✔ Local host = false for ::2 ✔ Is debugging fastapi=true ✔ Is debugging fastapi=false ✔ Is debugging fastapi=false when not defined ✔ Is debugging flask=true ✔ Is debugging flask=false ✔ Is debugging flask=false when not defined Debugging - Config Resolver Launch, OS = Windows ✔ Defaults should be returned when an empty object is passed with a Workspace Folder and active file ✔ Defaults should be returned when an object with 'noDebug' property is passed with a Workspace Folder and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and no active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and non python file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, with a workspace and an active python file ✔ Ensure 'port' is left unaltered ✔ Ensure 'localRoot' is left unaltered ✔ Ensure 'remoteRoot' is left unaltered ✔ Ensure 'localRoot' and 'remoteRoot' are not used ✔ Ensure non-empty path mappings are used ✔ Ensure replacement in path mappings happens ✔ Ensure path mappings are not automatically added if missing ✔ Ensure path mappings are not automatically added if empty ✔ Ensure path mappings are not automatically added to existing Ensure drive letter is lower cased for local path mappings on Windows when with existing path mappings Ensure drive letter is not lower cased for local path mappings on non-Windows when with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive ✔ Ensure `${command:python.interpreterPath}` is replaced with actual pythonPath ✔ Ensure `${command:python.interpreterPath}` substitution is properly handled ✔ Ensure hardcoded pythonPath is left unaltered ✔ Ensure hardcoded "python" is left unaltered ✔ Ensure hardcoded "debugAdapterPython" is left unaltered ✔ Ensure hardcoded "debugLauncherPython" is left unaltered ✔ Test defaults of debugger ✔ Test defaults of python debugger ✔ Test overriding defaults of debugger ✔ Ensure justMyCode property is correctly derived from debugStdLib ✔ Ensure redirectOutput property is correctly derived from console type ✔ Test fixFilePathCase ✔ Jinja added for Pyramid ✔ Auto detect flask debugging ✔ Test validation of Python Path when launching debugger (with invalid "python") ✔ Test validation of Python Path when launching debugger (with invalid "debugLauncherPython") ✔ Test validation of Python Path when launching debugger (with invalid "debugAdapterPython") ✔ Test validation of Python Path when launching debugger (with valid "python/debugAdapterPython/debugLauncherPython") ✔ Resolve path to envFile ✔ Must not contain Sub Process when not specified(launch) ✔ Must not contain Sub Process setting = false(launch) ✔ Must not contain Sub Process setting = true(launch) ✔ Must not contain Sub Process when not specified(attach) ✔ Must not contain Sub Process setting = false(attach) ✔ Must not contain Sub Process setting = true(attach) Debugging - Config Resolver Launch, OS = OSX ✔ Defaults should be returned when an empty object is passed with a Workspace Folder and active file ✔ Defaults should be returned when an object with 'noDebug' property is passed with a Workspace Folder and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and no active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and non python file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, with a workspace and an active python file ✔ Ensure 'port' is left unaltered ✔ Ensure 'localRoot' is left unaltered ✔ Ensure 'remoteRoot' is left unaltered ✔ Ensure 'localRoot' and 'remoteRoot' are not used ✔ Ensure non-empty path mappings are used ✔ Ensure replacement in path mappings happens ✔ Ensure path mappings are not automatically added if missing ✔ Ensure path mappings are not automatically added if empty ✔ Ensure path mappings are not automatically added to existing Ensure drive letter is lower cased for local path mappings on Windows when with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive ✔ Ensure `${command:python.interpreterPath}` is replaced with actual pythonPath ✔ Ensure `${command:python.interpreterPath}` substitution is properly handled ✔ Ensure hardcoded pythonPath is left unaltered ✔ Ensure hardcoded "python" is left unaltered ✔ Ensure hardcoded "debugAdapterPython" is left unaltered ✔ Ensure hardcoded "debugLauncherPython" is left unaltered ✔ Test defaults of debugger ✔ Test defaults of python debugger ✔ Test overriding defaults of debugger ✔ Ensure justMyCode property is correctly derived from debugStdLib ✔ Ensure redirectOutput property is correctly derived from console type ✔ Test fixFilePathCase ✔ Jinja added for Pyramid ✔ Auto detect flask debugging ✔ Test validation of Python Path when launching debugger (with invalid "python") ✔ Test validation of Python Path when launching debugger (with invalid "debugLauncherPython") ✔ Test validation of Python Path when launching debugger (with invalid "debugAdapterPython") ✔ Test validation of Python Path when launching debugger (with valid "python/debugAdapterPython/debugLauncherPython") ✔ Resolve path to envFile ✔ Must not contain Sub Process when not specified(launch) ✔ Must not contain Sub Process setting = false(launch) ✔ Must not contain Sub Process setting = true(launch) ✔ Must not contain Sub Process when not specified(attach) ✔ Must not contain Sub Process setting = false(attach) ✔ Must not contain Sub Process setting = true(attach) Debugging - Config Resolver Launch, OS = Linux ✔ Defaults should be returned when an empty object is passed with a Workspace Folder and active file ✔ Defaults should be returned when an object with 'noDebug' property is passed with a Workspace Folder and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and no active file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, no workspaces and non python file ✔ Defaults should be returned when an empty object is passed without Workspace Folder, with a workspace and an active python file ✔ Ensure 'port' is left unaltered ✔ Ensure 'localRoot' is left unaltered ✔ Ensure 'remoteRoot' is left unaltered ✔ Ensure 'localRoot' and 'remoteRoot' are not used ✔ Ensure non-empty path mappings are used ✔ Ensure replacement in path mappings happens ✔ Ensure path mappings are not automatically added if missing ✔ Ensure path mappings are not automatically added if empty ✔ Ensure path mappings are not automatically added to existing Ensure drive letter is lower cased for local path mappings on Windows when with existing path mappings ✔ Ensure drive letter is not lower cased for local path mappings on non-Windows when with existing path mappings ✔ Ensure local path mappings are not modified when not pointing to a local drive ✔ Ensure `${command:python.interpreterPath}` is replaced with actual pythonPath ✔ Ensure `${command:python.interpreterPath}` substitution is properly handled ✔ Ensure hardcoded pythonPath is left unaltered ✔ Ensure hardcoded "python" is left unaltered ✔ Ensure hardcoded "debugAdapterPython" is left unaltered ✔ Ensure hardcoded "debugLauncherPython" is left unaltered ✔ Test defaults of debugger ✔ Test defaults of python debugger ✔ Test overriding defaults of debugger ✔ Ensure justMyCode property is correctly derived from debugStdLib ✔ Ensure redirectOutput property is correctly derived from console type ✔ Test fixFilePathCase ✔ Jinja added for Pyramid ✔ Auto detect flask debugging ✔ Test validation of Python Path when launching debugger (with invalid "python") ✔ Test validation of Python Path when launching debugger (with invalid "debugLauncherPython") ✔ Test validation of Python Path when launching debugger (with invalid "debugAdapterPython") ✔ Test validation of Python Path when launching debugger (with valid "python/debugAdapterPython/debugLauncherPython") ✔ Resolve path to envFile ✔ Must not contain Sub Process when not specified(launch) ✔ Must not contain Sub Process setting = false(launch) ✔ Must not contain Sub Process setting = true(launch) ✔ Must not contain Sub Process when not specified(attach) ✔ Must not contain Sub Process setting = false(attach) ✔ Must not contain Sub Process setting = true(attach) Debugging - commands ✔ Test registering debug file command ✔ Test running debug file command Debugging - Service Registry ✔ Registrations 460 passing (335ms) 36 pending (.venv)