public void ItShouldGetAllChangesetsForAGivenProject() { var mockProxy = new Mock<ITFSChangesetProxy>(); var changesets = new List<Changeset>(); changesets.Add(new Changeset { Id = 1, Comment = "Checking in one file" }); changesets.Add(new Changeset { Id = 2, Comment = "Merging a branch" }); mockProxy.Setup(p => p.GetChangesetsByProject(It.Is<string>(s => s.Equals("Sample Project")), It.IsAny<FilterNode>(), It.IsAny<int>())) .Returns(changesets) .Verifiable(); var repository = new ChangesetRepository(mockProxy.Object); var operation = new ODataSelectManyQueryOperation(); operation.Keys = new Dictionary<string, string>(); operation.Keys.Add("Project", "Sample Project"); var results = repository.GetChangesetsByProject(operation); Assert.IsTrue(results.SequenceEqual<Changeset>(changesets), "The expected changesets for a project don't match the results"); mockProxy.VerifyAll(); }