public int Compare(object x, object y) { ConversationNode lhs = x as ConversationNode; ConversationNode rhs = y as ConversationNode; if (lhs == null) { return((rhs == null) ? 0 : -1); } if (rhs == null) { return(1); } return(_resourceComparer.CompareResources(lhs.Resource, rhs.Resource)); }
[Test] public void TypeComparer() { SortSettings settings = SortSettings.Parse(_storage, "Type- FirstName"); Assert.AreEqual(2, settings.SortProps.Length); Assert.AreEqual(2, settings.SortDirections.Length); Assert.AreEqual(ResourceProps.Type, settings.SortProps [0]); Assert.AreEqual(_propFirstName, settings.SortProps [1]); Assert.AreEqual(false, settings.SortDirections [0]); Assert.AreEqual(true, settings.SortDirections [1]); ResourceComparer comparer = new ResourceComparer(_ownerList, settings, false); IResource res1 = _storage.NewResource("Email"); IResource res2 = _storage.NewResource("Person"); Assert.IsTrue(comparer.CompareResources(res1, res2) > 0); }