unit tests, add guava for VisibleForTesting; and Mockito