add more unit testing