add simplecov for coverage