internal static ShimWorkItem CreateCodeReviewRequest(int id, string state, string closedStatus, List <WorkItem> responses) { var requestFields = new List <Field>() { new ShimField() { NameGet = () => CodeReviewPolicy.ClosedStatus, ValueGet = () => closedStatus } }; var fakeRequestFields = new ShimFieldCollection() { ItemGetString = (s) => requestFields.SingleOrDefault(f => f.Name == s) }; var links = new List <WorkItemLink>(); foreach (var response in responses) { links.Add(new ShimWorkItemLink() { LinkTypeEndGet = () => new ShimWorkItemLinkTypeEnd() { NameGet = () => "Child", }, TargetIdGet = () => response.Id }); } var fakeLinks = new ShimWorkItemLinkCollection(); fakeLinks.Bind(links); var fakeProject = new ShimProject() { StoreGet = () => new ShimWorkItemStore() { GetWorkItemInt32 = (i) => responses.SingleOrDefault(r => r.Id == i) } }; var reviewWorkItem = new ShimWorkItem() { TypeGet = () => new ShimWorkItemType() { NameGet = () => "Code Review Request" }, StateGet = () => state, FieldsGet = () => fakeRequestFields, WorkItemLinksGet = () => fakeLinks, ProjectGet = () => fakeProject }; return(reviewWorkItem); }
internal static ShimWorkItem CreateCodeReviewRequest(int id, string state, string closedStatus, List<WorkItem> responses) { var requestFields = new List<Field>() { new ShimField() { NameGet = () => CodeReviewPolicy.ClosedStatus, ValueGet = () => closedStatus } }; var fakeRequestFields = new ShimFieldCollection() { ItemGetString = (s) => requestFields.SingleOrDefault(f => f.Name == s) }; var links = new List<WorkItemLink>(); foreach(var response in responses) { links.Add(new ShimWorkItemLink() { LinkTypeEndGet = () => new ShimWorkItemLinkTypeEnd() { NameGet = () => "Child", }, TargetIdGet = () => response.Id }); } var fakeLinks = new ShimWorkItemLinkCollection(); fakeLinks.Bind(links); var fakeProject = new ShimProject() { StoreGet = () => new ShimWorkItemStore() { GetWorkItemInt32 = (i) => responses.SingleOrDefault(r => r.Id == i) } }; var reviewWorkItem = new ShimWorkItem() { TypeGet = () => new ShimWorkItemType() { NameGet = () => "Code Review Request" }, StateGet = () => state, FieldsGet = () => fakeRequestFields, WorkItemLinksGet = () => fakeLinks, ProjectGet = () => fakeProject }; return reviewWorkItem; }