@Test public void testDecrypt() throws Exception {

	// Arrange:
	final Encrypto mockEncrypto = mock(Encrypto.class);
	final Encrypto.Builder mockEncryptoBuilder = mock(Encrypto.Builder.class);
	when(mockEncryptoBuilder.build()).thenReturn(mockEncrypto);
	final Decrypto mockDecrypto = mock(Decrypto.class);
	final Decrypto.Builder mockDecryptoBuilder = mock(Decrypto.Builder.class);
	when(mockDecryptoBuilder.build()).thenReturn(mockDecrypto);
	final Crypto crypto = new TestCrypto.Builder(mockEncryptoBuilder, mockDecryptoBuilder).build();
	// Act:
	crypto.decrypt("Android".getBytes("UTF-8"));
	// Assert:
	verify(mockDecrypto).decrypt("Android".getBytes("UTF-8"));
	verifyNoMoreInteractions(mockDecrypto);
	verifyZeroInteractions(mockEncrypto);
}