Fix handling special chars in script paths
This commit improves the handling of paths with spaces or special characters during script execution in the desktop application. Key improvements: - Paths are now quoted for macOS/Linux, addressing issues with whitespace or single quotes. - Windows paths are enclosed in double quotes to handle special characters. Other supporting changes: - Add more documentation for terminal execution commands. - Refactor terminal script file execution into a dedicated file for improved separation of concerns. - Refactor naming of `RuntimeEnvironment` to align with naming conventions (no interface with I prefix) and for clarity. - Refactor `TemporaryFileCodeRunner` to simplify it by removing the `os` parameter and handling OS-specific logic within the filename generator instead. - Refactor `fileName` to `filename` for consistency.
This commit is contained in:
@@ -3,8 +3,8 @@ import { OperatingSystem } from '@/domain/OperatingSystem';
|
||||
import { MobileSafariActivePseudoClassEnabler } from '@/presentation/bootstrapping/Modules/MobileSafariActivePseudoClassEnabler';
|
||||
import { EventName, createWindowEventSpies } from '@tests/shared/Spies/WindowEventSpies';
|
||||
import { formatAssertionMessage } from '@tests/shared/FormatAssertionMessage';
|
||||
import { RuntimeEnvironment } from '@/infrastructure/RuntimeEnvironment/RuntimeEnvironment';
|
||||
import { isTouchEnabledDevice } from '@/infrastructure/RuntimeEnvironment/TouchSupportDetection';
|
||||
import { HostRuntimeEnvironment } from '@/infrastructure/RuntimeEnvironment/HostRuntimeEnvironment';
|
||||
import { MobileSafariDetectionTestCases } from './MobileSafariDetectionTestCases';
|
||||
|
||||
describe('MobileSafariActivePseudoClassEnabler', () => {
|
||||
@@ -59,7 +59,7 @@ function getTouchDetectorMock(
|
||||
return () => isTouchEnabled;
|
||||
}
|
||||
|
||||
class ConstructibleRuntimeEnvironment extends RuntimeEnvironment {
|
||||
class ConstructibleRuntimeEnvironment extends HostRuntimeEnvironment {
|
||||
public constructor(isTouchEnabled: boolean) {
|
||||
super(window, undefined, undefined, getTouchDetectorMock(isTouchEnabled));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user