Add tests (unit and functional)