public final void tag(I input, ScopedSpan span) {
    if (input == null) throw new NullPointerException("input == null");
    if (span == null) throw new NullPointerException("span == null");
    if (span.isNoop()) return;
    tag(span, input, span.context());
  }
@Test void tag_mutableSpan_empty() {
    when(parseValue.apply(input, context)).thenReturn("");

    tag.tag(input, context, mutableSpan);

    verify(parseValue).apply(input, context);
    verifyNoMoreInteractions(parseValue); // doesn't parse twice

    MutableSpan expected = new MutableSpan();
    expected.tag("key", "");
    assertThat(mutableSpan).isEqualTo(expected);
  }