feat: add full test coverage