add tests infrastructure
fix tests
fix: pep8