public Span newChild(TraceContext parent) {
    if (parent == null) throw new NullPointerException("parent == null");
    return _toSpan(parent, decorateContext(parent, parent.spanId()));
  }
@Test void newChild_resultantSpanIsLocalRoot() {
    Span span = tracer.newChild(context);

    assertThat(span.context().spanId()).isEqualTo(span.context().localRootId()); // Sanity check
    assertThat(span.context().isLocalRoot()).isTrue();

    // Check we don't always make children local roots
    Span child = tracer.newChild(span.context());
    assertThat(child.context().localRootId()).isEqualTo(span.context().localRootId());
    assertThat(child.context().isLocalRoot()).isFalse();
  }