title: Do I need to write a full test for overloads?
body: <p>Assume the following method overloads:</p>
  <pre><code>public string SayHello(string identifier)
  {
      return $&quot;Hello {identifier}&quot;;
  }
  
  public string SayHello(long identifier)
  {
      return SayHello(identifier.ToString());
  }
  </code></pre>
  <p>I would write a test for <code>SayHello(string identifier)</code> like this:</p>
  <pre><code>Assert.Equal(&quot;Hello Max&quot;, SayHello(&quot;Max&quot;))
  </code></pre>
  <p>What about <code>SayHello(long identifier)</code> ? Of course I could write</p>
  <pre><code>Assert.Equal(&quot;Hello 123&quot;, SayHello(123))
  </code></pre>
  <p>but imagine the logic for SayHello would be far more complex. Then I basically would have to write the same unit test twice with only slight changes. So, is there any better approach? Maybe just check if / assert that <code>SayHello(long identifier)</code> ONLY calls <code>SayHello(identifier.toString())</code> ? Is that possible?</p>