add coverage report
refactor test