So, i’m new to unit testing, and even more so to test first development. Is it valid for me to have just a single assert.isTrue statement in my unit test where I pass in my method and a valid parameter, and compare it to the known good answer?
Method
public static string RemoveDash(string myNumber)
{
string cleanNumber = myNumber.Replace("-","");
return cleanNumber;
}
Test
[TestMethod()]
public void TestRemoveDash()
{
Assert.IsTrue(RemoveDash("50-00-0")=="50000");
}
That’s pretty valid if it tests the functionality of your method, which it very much seems to be doing.
Might consider using Equals here instead, but it doesn’t really matter. Also, I know this is a test example, but always make sure to test cases where the input is not what is expected as well as whatever other valid forms it can come in (this can be in the same test method or a different one depending on your preference)