#!/bin/bash set -e workspace_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" temp_dir="$(mktemp -d)" trap 'rm -rf "$temp_dir"' EXIT bundle_dir="$temp_dir/WarpDev.app/Contents" wrapper_path="$bundle_dir/Resources/bin/warpctrl-dev" binary_path="$bundle_dir/MacOS/dev" installed_path="$temp_dir/usr/local/bin/warpctrl-dev" forwarded_args_file="$temp_dir/forwarded-args" expected_args_file="$temp_dir/expected-args" mkdir -p "$(dirname "$binary_path")" "$(dirname "$installed_path")" cat > "$binary_path" << 'EOF' #!/bin/bash printf '%s\n' "$@" > "$FORWARDED_ARGS_FILE" EOF chmod +x "$binary_path" "$workspace_root/script/macos/create_warpctrl_wrapper" \ "$wrapper_path" \ "../../MacOS/dev" cat > "$expected_args_file" << 'EOF' --warpctrl tab create --instance inst 123 EOF FORWARDED_ARGS_FILE="$forwarded_args_file" \ "$wrapper_path" tab create --instance "inst 123" cmp "$expected_args_file" "$forwarded_args_file" ln -s "$wrapper_path" "$installed_path" FORWARDED_ARGS_FILE="$forwarded_args_file" \ "$installed_path" tab create --instance "inst 123" cmp "$expected_args_file" "$forwarded_args_file"