What happens when you pass D:\x\x.git here?

You bypass the URIish parsing completely and miss all logic encoded in this class. By using the constructor logic you could make sure this method
is consistent with the rest or the class.

Doing so would mean you could do with fewer tests since all the illegall formats have already been taken care of.