tests and code commenting