public void TestProjectServicesRules_RulesForPipelineStatus(string testValue) { this.Response.Messages.Clear(); this.Response.Messages.HasErrors = false; var query1 = from p in this.db.Context.Projects join q in this.db.Context.Quotes on p.ProjectId equals q.ProjectId where p.OwnerId == user.UserId && q.AwaitingDiscountRequest == true && p.ProjectStatusTypeId == ProjectStatusTypeEnum.Inactive select new { p }; var result1 = query1.FirstOrDefault(); Project _project = result1.p as Project; switch (testValue) { case "ChangeFromInActiveToOpen": _project.ProjectStatusTypeId = ProjectStatusTypeEnum.Open; projectService.RulesForPipelineStatus(user, _project); Assert.That(_project.ProjectLeadStatusTypeId, Is.EqualTo(ProjectLeadStatusTypeEnum.Opportunity)); break; case "ChangeToOpportunityWhenProjectOpentatusIsSubmittal": _project.ProjectStatusTypeId = ProjectStatusTypeEnum.Open; _project.ProjectOpenStatusTypeId = (byte)ProjectOpenStatusTypeEnum.Submittal; projectService.RulesForPipelineStatus(user, _project); Assert.That(_project.ProjectLeadStatusTypeId, Is.EqualTo(ProjectLeadStatusTypeEnum.Opportunity)); break; case "ChangeToOpportinityWhenDARIsApproved": _project.ProjectStatusTypeId = ProjectStatusTypeEnum.Open; projectService.RulesForPipelineStatus(user, _project); Assert.That(_project.ProjectLeadStatusTypeId, Is.EqualTo(ProjectLeadStatusTypeEnum.Opportunity)); break; case "ChangeFromInActiveToDisqualified": _project.ProjectStatusTypeId = ProjectStatusTypeEnum.Open; _project.ProjectStatusTypeId = ProjectStatusTypeEnum.Inactive; projectService.RulesForPipelineStatus(user, _project); Assert.That(_project.ProjectLeadStatusTypeId, Is.EqualTo(ProjectLeadStatusTypeEnum.Disqualified)); break; case "AddNoteWhenChangeFromLeadToOpportunity": _project.ProjectStatusTypeId = ProjectStatusTypeEnum.Open; _project.ProjectLeadStatusTypeId = ProjectLeadStatusTypeEnum.Opportunity; projectService.RulesForPipelineStatus(user, _project); ProjectPipelineNote _model = this.db.Context.ProjectPipelineNotes.Where(ppn => ppn.ProjectId == _project.ProjectId).FirstOrDefault(); Assert.That(_model, Is.Not.EqualTo(null)); Assert.That(_model.ProjectId, Is.EqualTo(_project.ProjectId)); Assert.That(_model.Note, Is.EqualTo(Resources.ResourceUI.ConvertToOpportunity)); break; } }
public void TestProjectAPI_GetProjectPipeLineNotes() { SetupProjectAPIForTesting(); ProjectPipelineNote projectPipeLineNote = this.db.Context.ProjectPipelineNotes .Where(ppn => ppn.OwnerId == user.UserId) .OrderByDescending(ppn => ppn.ProjectId) .FirstOrDefault(); serviceResponse = projectApi.GetProjectPipelineNotes(projectPipeLineNote.ProjectId); Assert.That(serviceResponse.HasError, Is.EqualTo(false)); ProjectPipelineNoteListModel model = serviceResponse.Model as ProjectPipelineNoteListModel; Assert.That(model.Items.Count, Is.GreaterThan(0)); ProjectPipelineNoteModel ppnModel = model.Items.First(); Assert.That(ppnModel.Note, Is.EqualTo(projectPipeLineNote.Note)); }