Channelling timh, you might want to implement the valid_path? method to avoid the inevitable double negative.

I'd also sort of expect invalid_path? to return a simple boolean true/false and not have the side effect of spitting out warnings.  You might just rename this to .print_invalid_path_warnings(@new_resource.path) or something?