@Test public void decorate_makesNewExtra() {

  List<TraceContext> contexts = asList(
      context.toBuilder().build(),
      context.toBuilder().addExtra(1L).build(),
      context.toBuilder().addExtra(1L).addExtra(2L).build()
  );
  for (TraceContext context : contexts) {
    // adds a new extra container and claims it against the current context.
    TraceContext ensured = factory.decorate(context);
    assertThat(ensured.extra())
        .hasSize(context.extra().size() + 1)
        .containsAll(context.extra());
    assertExtraClaimed(ensured);
  }
}