73 lines
2.1 KiB
Plaintext
73 lines
2.1 KiB
Plaintext
// Test script for the run command functionality
|
|
|
|
print("===== Run Command Test =====");
|
|
|
|
// Test single command
|
|
print("\n=== Single Command Execution ===");
|
|
let result = run("echo Hello, World!");
|
|
print(`Command stdout: ${result.stdout}`);
|
|
print(`Command stderr: ${result.stderr}`);
|
|
print(`Command success: ${result.success}`);
|
|
print(`Command exit code: ${result.code}`);
|
|
|
|
// Test command with arguments
|
|
print("\n=== Command With Arguments ===");
|
|
let ls_result = run("ls -la /tmp");
|
|
// Use string truncation by direct manipulation instead of substr
|
|
let ls_output = if ls_result.stdout.len() > 100 {
|
|
ls_result.stdout[0..100] + "..."
|
|
} else {
|
|
ls_result.stdout
|
|
};
|
|
print(`ls -la /tmp stdout: ${ls_output}`);
|
|
print(`ls success: ${ls_result.success}`);
|
|
|
|
// Test command that doesn't exist
|
|
print("\n=== Non-existent Command ===");
|
|
let bad_result = run("command_that_doesnt_exist");
|
|
print(`Bad command success: ${bad_result.success}`);
|
|
print(`Bad command error: ${bad_result.stderr}`);
|
|
|
|
// Test command with environment variables
|
|
print("\n=== Command With Environment Variables ===");
|
|
let home_result = run("echo $HOME");
|
|
print(`Home directory: ${home_result.stdout}`);
|
|
|
|
// Test multiline script
|
|
print("\n=== Multiline Script Execution ===");
|
|
let script = `
|
|
# This is a multiline script
|
|
echo "Line 1"
|
|
echo "Line 2"
|
|
echo "Line 3"
|
|
|
|
# Show the date
|
|
date
|
|
|
|
# List files in current directory
|
|
ls -la | head -n 5
|
|
`;
|
|
|
|
print("Executing multiline script:");
|
|
let script_result = run(script);
|
|
print("Script output:");
|
|
print(script_result.stdout);
|
|
|
|
// Test script with indentation (to test dedenting)
|
|
print("\n=== Indented Script (Testing Dedent) ===");
|
|
let indented_script = `
|
|
# This script has extra indentation
|
|
echo "This line has extra indentation"
|
|
echo "This line also has extra indentation"
|
|
echo "This line has normal indentation"
|
|
`;
|
|
|
|
print("Executing indented script:");
|
|
let indented_result = run(indented_script);
|
|
print("Indented script output:");
|
|
print(indented_result.stdout);
|
|
|
|
print("\n===== Run Command Test Completed =====");
|
|
|
|
"Success"
|