### Question:
BasicName implements Name { public String getNamespaceUri() { return this.namespaceUri; } BasicName( String namespaceUri,
                      String localName ); String getLocalName(); String getNamespaceUri(); String getString(); String getString( TextEncoder encoder ); String getString( NamespaceRegistry namespaceRegistry ); String getString( NamespaceRegistry namespaceRegistry,
                             TextEncoder encoder ); String getString( NamespaceRegistry namespaceRegistry,
                             TextEncoder encoder,
                             TextEncoder delimiterEncoder ); int compareTo( Name that ); @Override int hashCode(); @Override boolean equals( Object obj ); @Override String toString();  }### Answer:
@Test public void shouldAllowNullNamespaceUriInConstructorAndConvertToEmptyString() { name = new BasicName(null, validLocalName); assertThat(name.getNamespaceUri(), is("")); }
@Test public void shouldAllowEmptyNamespaceUriInConstructor() { name = new BasicName("", validLocalName); assertThat(name.getNamespaceUri(), is("")); }
@Test public void shouldTrimNamespaceUriInConstructor() { name = new BasicName(" " + validNamespaceUri + "\t \t", validLocalName); assertThat(name.getNamespaceUri(), is(validNamespaceUri.trim())); name = new BasicName(" \t \t", validLocalName); assertThat(name.getNamespaceUri(), is("")); }