.NET 4.0 を対象とするプロジェクト内で次のテストを行っています。
[TestFixture]
public class Donkey
{
[Test]
public void TestListSorting()
{
var expected = new[]
{
MockRepository.GenerateStub<IComparable>(),
MockRepository.GenerateStub<IComparable>()
};
var sorted = new List<IComparable>(expected);
CollectionAssert.AreEqual(expected, sorted);
sorted.Sort();
CollectionAssert.AreEqual(expected, sorted);
}
}
.NET 4.0 しかインストールされていないマシンで実行すると失敗します。.NET 4.5 のみがインストールされているマシンで実行すると、パスします。
.NET 4.5 では、からSort
それぞれ返されるオブジェクトのリストをソートするときに順序を維持するためにの実装が変更されたと想定しています。0
CompareTo
さて、このテストの明らかな狂気は脇に置いてください。この種の行動に頼るのが狂っていることを私は知っています。
確かにこれは重大な変更ですか?.NET 4.0 と 4.5 の間の互換性については、このページには記載されていません。
これには理由がありますか?何か不足していますか?実際の重大な変更を示す別のページはありますか? 座ってパニックをやめるべきですか?