Пример #1
0
        public void ItShouldGetAllBuildsForAGivenCollection()
        {
            var mockProxy = new Mock<ITFSBuildProxy>();
            var projects = new List<Project>();
            var buildsFromProjects = new List<Build>();

            projects.Add(new Project { Name = "Project 1" });
            projects.Add(new Project { Name = "Project 2" });

            buildsFromProjects.Add(new Build { Definition = "Full Build", Number = "FB Build 01", Project = "Project 1" });
            buildsFromProjects.Add(new Build { Definition = "Custom Build", Number = "CB Build 01", Project = "Project 1" });
            buildsFromProjects.Add(new Build { Definition = "Full Build", Number = "FB Build 01", Project = "Project 2" });
            buildsFromProjects.Add(new Build { Definition = "Custom Build", Number = "CB Build 01", Project = "Project 2" });

            mockProxy.Setup(p => p.GetBuildsByProjectCollection(It.IsAny<FilterNode>()))
                .Returns(buildsFromProjects)
                .Verifiable();

            var repository = new BuildRepository(mockProxy.Object);
            var parameters = new ODataSelectManyQueryOperation();
            parameters.FilterExpression = null;

            var results = repository.GetAll(parameters);

            Assert.IsTrue(results.SequenceEqual<Build>(buildsFromProjects), "The expected builds for a collection don't match the results");
            mockProxy.VerifyAll();
        }
Пример #2
0
        public IEnumerable<WorkItem> GetWorkItemsByBuild(ODataSelectManyQueryOperation operation)
        {
            if (operation == null)
            {
                throw new ArgumentNullException("operation");
            }

            var parameters = new WorkItemFilterExpressionVisitor(operation.FilterExpression).Eval();
            return this.proxy.GetWorkItemsByBuild(operation.Keys["project"], operation.Keys["number"], parameters);
        }
Пример #3
0
        public IEnumerable<Build> GetBuildsByProject(ODataSelectManyQueryOperation operation)
        {
            if (operation == null)
            {
                throw new ArgumentNullException("operation");
            }

            var parameters = new BuildFilterExpressionVisitor(operation.FilterExpression).Eval();
            return this.proxy.GetBuildsByProject(operation.Key, parameters);
        }
Пример #4
0
        public IEnumerable<Changeset> GetChangesetsByProject(ODataSelectManyQueryOperation operation)
        {
            if (operation == null)
            {
                throw new ArgumentNullException("operation");
            }

            var parameters = new ChangesetFilterExpressionVisitor(operation.FilterExpression).Eval();
            int topRequestValue = this.GetTopRequestValue(operation, parameters);

            return this.proxy.GetChangesetsByProject(operation.Key, parameters, topRequestValue);
        }
Пример #5
0
        public IEnumerable<Change> GetChangesByChangeset(ODataSelectManyQueryOperation operation)
        {
            var changesetId = 0;
            if (!int.TryParse(operation.Key, NumberStyles.Integer, CultureInfo.InvariantCulture, out changesetId))
            {
                throw new ArgumentException("The id parameter must be numeric", "id");
            }

            int topRequestValue = this.GetTopRequestValue(operation);

            return this.proxy.GetChangesByChangeset(changesetId, topRequestValue);
        }
        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();
        }
Пример #7
0
        public void ItShouldGetAllChangesForAGivenChangeset()
        {
            var mockProxy = new Mock<ITFSChangeProxy>();
            var changes = new List<Change>();

            changes.Add(new Change { Changeset = 123, Path = "root>path1", ChangeType = "rename" });
            changes.Add(new Change { Changeset = 123, Path = "root>path2", ChangeType = "delete" });

            mockProxy.Setup(p => p.GetChangesByChangeset(123, int.MaxValue))
                 .Returns(changes)
                 .Verifiable();

            var repository = new ChangeRepository(mockProxy.Object);
            var operation = new ODataSelectManyQueryOperation();
            operation.Keys = new Dictionary<string, string>();
            operation.Keys.Add("Changeset", "123");
            var results = repository.GetChangesByChangeset(operation);

            Assert.IsTrue(results.SequenceEqual<Change>(changes), "The expected changes for a collection don't match the results");
            mockProxy.VerifyAll();
        }
        public void ItShouldGetAllWorkItemsForAGivenBuild()
        {
            var mockProxy = new Mock<ITFSWorkItemProxy>();
            var items = new List<WorkItem>();

            items.Add(new WorkItem { Id = 1, Description = "This is the first WorkItem", CreatedBy = "johndoe", Priority = "1", Title = "Bug #1" });
            items.Add(new WorkItem { Id = 1, Description = "This is the second WorkItem", CreatedBy = "mary", Priority = "5", Title = "Bug #2" });

            mockProxy.Setup(p => p.GetWorkItemsByBuild("Sample Project", "123", It.IsAny<FilterNode>()))
                 .Returns(items)
                 .Verifiable();

            var repository = new WorkItemRepository(mockProxy.Object);
            var operation = new ODataSelectManyQueryOperation();
            operation.Keys = new Dictionary<string, string>();
            operation.Keys.Add("project", "Sample Project");
            operation.Keys.Add("number", "123");

            var results = repository.GetWorkItemsByBuild(operation);

            Assert.IsTrue(results.SequenceEqual<WorkItem>(items), "The expected workitems for a build don't match the results");
            mockProxy.VerifyAll();
        }
        public void ItShouldGetAllBuildDefinitionsForAGivenProject()
        {
            var mockProxy = new Mock<ITFSBuildDefinitionProxy>();
            var buildDefinitions = new List<BuildDefinition>();

            buildDefinitions.Add(new BuildDefinition { Definition = "Full Build", Project = "SampleProject" });
            buildDefinitions.Add(new BuildDefinition { Definition = "Custom Build", Project = "SampleProject" });

            mockProxy.Setup(b => b.GetBuildDefinitionsByProject(It.Is<string>(s => s == "SampleProject")))
                 .Returns(buildDefinitions)
                 .Verifiable();

            var repository = new BuildDefinitionRepository(mockProxy.Object);

            var parameters = new ODataSelectManyQueryOperation();
            parameters.FilterExpression = null;
            parameters.Keys = new Dictionary<string, string>();
            parameters.Keys.Add("Project", "SampleProject");

            var results = repository.GetBuildDefinitionsByProject(parameters);

            Assert.IsTrue(results.SequenceEqual<BuildDefinition>(buildDefinitions), "The expected build definitions for a project don't match the results");
            mockProxy.VerifyAll();
        }
Пример #10
0
 public object MockMethodForDecoratedNavigationProperty(ODataSelectManyQueryOperation operation)
 {
     throw new NotImplementedException();
 }
Пример #11
0
 public object GetDecoratedNavigationPropertyByMockEntity(ODataSelectManyQueryOperation operation)
 {
     throw new NotImplementedException();
 }
Пример #12
0
 public object CountRemoteCountedProperties(ODataSelectManyQueryOperation operation)
 {
     throw new NotImplementedException();
 }
Пример #13
0
 public long CountRemoteCountedNavigationPropertyByMockEntity(ODataSelectManyQueryOperation operation)
 {
     return 10;
 }