JUnit Optimization

Optimize tests using JUnit 4 parameterized tests and theories.