  @Test
  public void simple() throws Exception {

    SimpleFactory.Simple simple = factory.simple("b");
    SimpleFactoryBuilders.SimpleUpdater updater = updaterFactory.updater(simple);
    SimpleFactory.Simple updatedSimple = updater
        .appendix("c")
        .done();
    assertThat(simple.concat(), is("ab"));
    assertThat(updatedSimple.concat(), is("ac"));
    // updater is recycled
    assertTrue(updater
        == updaterFactory.updater(factory.simple("x")));
  }