unit tests and application logic