@Test
public void napoliBuilder() throws Exception {

  Spaghetti spaghetti = Spaghetti.napoliBuilder()
      .cheese("reggiano")
      .alDente(true);
  assertTrue(spaghetti.alDente);
  assertThat(spaghetti.cheese, is("reggiano"));
  assertThat(spaghetti.sauce, is("tomato"));
  spaghetti = spaghettiUpdater(spaghetti)
      .sauce("hot salsa")
      .cheese("cheddar")
      .alDente(false).done();
  assertFalse(spaghetti.alDente);
  assertThat(spaghetti.cheese, is("cheddar"));
  assertThat(spaghetti.sauce, is("hot salsa"));
}