@Override public Integer getProjectId() { return projectAssignment.getProject().getPK(); } }
/** * @see java.lang.Object#toString() */ public String toString() { return new ToStringBuilder(this).append("active", this.active) .append("PK", this.getPK()) .append("defaultProject", this.defaultProject) .append("fullname", this.getFullName()) .append("projectCode", this.getProjectCode()) .append("name", this.getName()) .append("projectId", this.getProjectId()) .append("billable", this.isBillable()) .append("pm", this.getProjectManager()) .toString(); }
@Test public void shouldFindActiveProjectsWhereUserIsPM() { List<Project> res = projectDAO.findActiveProjectsWhereUserIsPM(new User(1)); assertEquals(10, res.iterator().next().getPK().intValue()); }
@Test public void should_create_pm_detailed_report() { Project project = new Project(1); project.setProjectCode("PRJ"); DateRange dr = new DateRange(new Date(), new Date()); when(reportAggregatedDao.getMinMaxDateTimesheetEntry(project)).thenReturn(dr); List<AssignmentAggregateReportElement> elms = new ArrayList<>(); for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { elms.add(AssignmentAggregateReportElementMother.createProjectAssignmentAggregate(j, i, i)); } } when(reportAggregatedDao.getCumulatedHoursPerAssignmentForProjects(any(List.class), any(DateRange.class))) .thenReturn(elms); List<ProjectAssignment> assignments = new ArrayList<>(); assignments.add(ProjectAssignmentObjectMother.createProjectAssignment(2)); when(assignmentService.getProjectAssignments(project, dr)).thenReturn(assignments); ProjectManagerReport report = aggregateReportService.getProjectManagerDetailedReport(project); assertEquals(new Integer(1), report.getProject().getPK()); assertEquals(16, report.getAggregates().size()); }
@Test public void should_only_include_billable_without_customer_or_project_selection() { provideNoLocks(); provideNoAssignmentsWithoutBookings(); userSelectedCriteria.setOnlyBillableProjects(true); Project billableProject = ProjectObjectMother.createProject(1); billableProject.setBillable(true); Project notBillableProject = ProjectObjectMother.createProject(2); notBillableProject.setBillable(false); when(projectDao.findAllActive()).thenReturn(Arrays.asList(billableProject, notBillableProject)); List<User> users = Lists.newArrayList(); List<Project> projects = Lists.newArrayList(billableProject); UsersAndProjects usersAndProjects = new UsersAndProjects(users, projects); when(reportCriteriaService.criteriaToUsersAndProjects(userSelectedCriteria)).thenReturn(usersAndProjects); ArgumentCaptor<List> projectIdListCapture = ArgumentCaptor.forClass(List.class); when(detailedReportDao.getHoursPerDayForProjects(projectIdListCapture.capture(), any(DateRange.class))) .thenReturn(new ArrayList<FlatReportElement>()); detailedReportService.getDetailedReportData(reportCriteria); assertEquals(1, projectIdListCapture.getValue().size()); assertEquals(billableProject.getPK(), projectIdListCapture.getValue().get(0)); }