added tests and main files