not being a douche and finally adding unit tests