public void ShouldExhibitValueTypeEquality() { ResourceId resourceId1 = new ResourceId("A"); ResourceId resourceId2 = new ResourceId("A"); ResourceId resourceId3 = new ResourceId("B"); Assert.True(resourceId1.Equals(resourceId2)); Assert.False(resourceId1.Equals(resourceId3)); Assert.True(resourceId1.Equals(resourceId1)); Assert.False(resourceId1.Equals(new object())); Assert.False(resourceId1.Equals(null)); Assert.True(resourceId1.GetHashCode().Equals(resourceId2.GetHashCode())); Assert.False(resourceId1.GetHashCode().Equals(resourceId3.GetHashCode())); Assert.True(resourceId1.GetHashCode().Equals(resourceId1.GetHashCode())); Assert.False(resourceId1.GetHashCode().Equals(new object().GetHashCode())); }
public Func<IStore, IRepresentation> CreateFeedAccessor(ResourceId resourceId) { if (resourceId.Equals(workingFeedResourceId)) { return (store => new WorkingFeed(store.GetCurrentFeed(recentEventsFeedStoreId))); } return (store => new ArchiveFeed(store.GetArchiveFeed(converter.Convert(resourceId)))); }