Includes JUnit tests