The project suffers from lack of unit test. We need to setup a test structure, and add test for all functionalities gradually to enhance the coverage.