should we be detecting an un-used port and using that for unit tests?