@Test
public void testBake_serializesPayload_nestedEmptyRecipeWithIngredientContextInOtherDomain() {

  Dispatcher spyA = setupDispatcherSpy("A");
  Dispatcher spyB = setupDispatcherSpy("B");
  Ingredient ingredient = new Ingredient("EmptyIngredient", "A") {};
  KeyedIngredient keyedIngredient = new KeyedIngredient("EmptyKeyedIngredient", "B") {};
  oven.bake(Recipe.prepare(ingredient, Recipe.context(keyedIngredient)));
  verify(spyA)
      .dispatch(
          "{\"recipe\":{\"Recipe\":{\"ingredients\":[{\"EmptyIngredient\":{}}]}},\"cake\":{}}");
  verify(spyB)
      .dispatch(
          "{\"recipe\":{\"Recipe\":{\"ingredients\":[{\"EmptyKeyedIngredient\":{}}]}},\"cake\":{}}");
}