I've come across odd behavior when comparing strings. First assert passes, but I don't think it should.. Second assert fails, as expected...
[Fact]
public void StringTest()
{
    string testString_1 = "My name is Erl. I am a program\0";
    string testString_2 = "My name is Erl. I am a program";
    Assert.Equal<string>(testString_1, testString_2);
    Assert.True(testString_1.Equals(testString_2));
}
Any ideas?