I thought I tested it but I guess I didn't :)
Here's another version that is a little more similar to my first version (with the missing not check added):
function Test-LocalOrParentPath($path) {
$done = $false
do {
if (Test-Path $path) { return $true }
if (
-not (Test-Path ..)) { return $false }
$path = "..\$path"
} while (!$done)
}
I'm fine with whatever, though.