Skip to content

Instantly share code, notes, and snippets.

@nayeemzen
Created April 7, 2017 03:27
Show Gist options
  • Save nayeemzen/d45a8cc053399523e54563fd57ec214a to your computer and use it in GitHub Desktop.
Save nayeemzen/d45a8cc053399523e54563fd57ec214a to your computer and use it in GitHub Desktop.
class AddressVerifierTest {
  @Test public void basicTest() {
// We can use a mocking framework to mock the implementation.
GoogleMapsClient mockMapsClient = mock(GoogleMapsClient.class);
when(mockMapsClient.verifyAddress(SOME_INVALID_TEST_ADDRESS)).return(Result.FAILED);
when(mockMapsClient.verifyAddress(SOME_VALID_TEST_ADDRESS)).return(Result.SUCCESS);
AddressVerifier verifier = new AddressVerifier(mockMapsClient);
assertThat(verifier.isVerified(SOME_INVALID_TEST_ADDRESS)).isFalse();
assertThat(verifier.isVerified(SOME_VALID_TEST_ADDRESS)).isTrue();
// WOOOHOOO! OUR TESTS ARE NOW FULLY INDEPENDENT OF GOOGLE MAPS CLIENT! WE TEST OUR OWN CODE, NOT THEIRS!
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment