public void TestMoveUp([Range(1, 3)] int item) { var objs = new List <DataObjectViewModel>() { CreateNewDataObjectViewModel(), CreateNewDataObjectViewModel(), CreateNewDataObjectViewModel(), CreateNewDataObjectViewModel() }; foreach (var dom in objs) { olm.AddItem(dom); } olm.MoveItemUp(objs[item]); var tmp = objs[item - 1]; objs[item - 1] = objs[item]; objs[item] = tmp; Assert.That(olm.Value.Count, Is.EqualTo(objs.Count)); Assert.That(objMock.Object.TestCollection, Is.EquivalentTo(objs.Select(dom => dom.Object))); Assert.That(list, Is.EquivalentTo(objs.Select(dom => dom.Object).ToArray())); }