add tests, update package.json