### Question:
ProductExecutorContext { public AdapterMetaData getCurrentMetaDataOrNull() { return callback.getMetaDataOrNull(); } ProductExecutorContext(List<ProductResult> formerResults, ProductExecutorCallback callback); AdapterMetaDataCallback getCallBack(); void useFirstFormerResult(); void useFirstFormerResultHavingMetaData(String key, URI uri); void useFirstFormerResultHavingMetaData(String key, String value); ProductResult getCurrentProductResult(); AdapterMetaData getCurrentMetaDataOrNull(); void persist(ProductResult productResult);  }### Answer:
@Test public void formerResults_1_result_with_metadata__results_in_metadata_from_callback_getMetaDataOrNull() { AdapterMetaData metaData = new AdapterMetaData(); contextToTest = new ProductExecutorContext(formerResults, callback); when(callback.getMetaDataOrNull()).thenReturn(metaData); AdapterMetaData result = contextToTest.getCurrentMetaDataOrNull(); verify(callback).getMetaDataOrNull(); assertEquals(result,metaData); }