integrated cli with unit tests