@Override public AuftragDO newInstance() { return new AuftragDO(); }
@Test public void testNonHistorizableProperties() { final TaskDO task = new TaskDO(); Set<String> set = HistoryServiceManager.get().getHistoryService().getNoHistoryProperties(emf, task.getClass()); Assert.assertEquals(2, set.size()); Assert.assertTrue(set.contains("lastUpdate")); Assert.assertTrue(set.contains("created")); Assert.assertTrue(set.contains("lastUpdate")); Assert.assertTrue(set.contains("created")); Assert.assertFalse(set.contains("title")); final AuftragDO order = new AuftragDO(); set = HistoryServiceManager.get().getHistoryService().getNoHistoryProperties(emf, order.getClass()); Assert.assertEquals(3, set.size()); // not, because ransient Assert.assertTrue(set.contains("uiStatus")); Assert.assertTrue(set.contains("uiStatusAsXml")); Assert.assertFalse(set.contains("subject")); } }
private AuftragDO createAuftragWithPeriodOfPerformance(final int beginYear, final int beginMonth, final int beginDay, final int endYear, final int endMonth, final int endDay) { final AuftragDO auftrag = new AuftragDO(); auftrag.setNummer(auftragDao.getNextNumber(auftrag)); dbNumber++; auftrag.addPosition(new AuftragsPositionDO()); auftrag.setPeriodOfPerformanceBegin(java.sql.Date.valueOf(LocalDate.of(beginYear, beginMonth, beginDay))); auftrag.setPeriodOfPerformanceEnd(java.sql.Date.valueOf(LocalDate.of(endYear, endMonth, endDay))); return auftrag; } }
AuftragDO e = new AuftragDO(); e.setAngebotsDatum(new Date(new java.util.Date().getTime())); e.setTitel("Titel_TEST");
@Test public void getNextNumber() { logon(TEST_FINANCE_USER); AuftragDO auftrag = new AuftragDO(); auftrag.setNummer(auftragDao.getNextNumber(auftrag)); auftrag.addPosition(new AuftragsPositionDO()); auftragDao.save(auftrag); assertEquals(dbNumber++, auftrag.getNummer().intValue()); auftrag = new AuftragDO(); auftrag.setNummer(auftragDao.getNextNumber(auftrag)); auftrag.addPosition(new AuftragsPositionDO()); auftragDao.save(auftrag); assertEquals(dbNumber++, auftrag.getNummer().intValue()); }
@Test public void validateDatesInPaymentScheduleWithinPeriodOfPerformanceOfPosition() final AuftragDO auftrag = new AuftragDO(); final List<AuftragsPositionDO> auftragsPositions = auftrag.ensureAndGetPositionen(); final List<PaymentScheduleDO> paymentSchedules = auftrag.ensureAndGetPaymentSchedules();
AuftragDO e = new AuftragDO(); e.setAngebotsDatum(new Date(new java.util.Date().getTime())); e.setTitel("Titel_TEST");
@Test public void validateAmountsInPaymentScheduleNotGreaterThanNetSumOfPosition() { final AuftragDO auftrag = new AuftragDO(); final List<AuftragsPositionDO> auftragsPositions = auftrag.ensureAndGetPositionen(); final List<PaymentScheduleDO> paymentSchedules = auftrag.ensureAndGetPaymentSchedules(); auftragsPositions.add(new AuftragsPositionDO().setNumber((short) 1).setNettoSumme(new BigDecimal(2000))); auftragsPositions.add(new AuftragsPositionDO().setNumber((short) 2).setNettoSumme(new BigDecimal(5000))); paymentSchedules.add(new PaymentScheduleDO().setPositionNumber((short) 1).setAmount(new BigDecimal(1000))); paymentSchedules.add(new PaymentScheduleDO().setPositionNumber((short) 1).setAmount(null)); // should not cause a NPE paymentSchedules.add(new PaymentScheduleDO().setPositionNumber((short) 1).setAmount(new BigDecimal(1000))); paymentSchedules.add(new PaymentScheduleDO().setPositionNumber((short) 2).setAmount(new BigDecimal(2000))); paymentSchedules.add(new PaymentScheduleDO().setPositionNumber((short) 2).setAmount(new BigDecimal(2999))); boolean exceptionThrown = false; try { auftragDao.validateAmountsInPaymentScheduleNotGreaterThanNetSumOfPosition(auftrag); } catch (UserException e) { exceptionThrown = true; } assertFalse(exceptionThrown); // amounts of position 1 (2001) will now be greater than netto summe (2000) -> should throw exception paymentSchedules.add(new PaymentScheduleDO().setPositionNumber((short) 1).setAmount(new BigDecimal(1))); try { auftragDao.validateAmountsInPaymentScheduleNotGreaterThanNetSumOfPosition(auftrag); } catch (UserException e) { exceptionThrown = true; } assertTrue(exceptionThrown); }
private void checkNoWriteAccess(final Serializable id, final AuftragDO auftrag, final String who) { try { final AuftragDO auf = new AuftragDO(); final int number = auftragDao.getNextNumber(auf); auf.setNummer(number); auftragDao.save(auf); fail("AccessException expected: " + who + " users should not have save access to orders."); } catch (final AccessException ex) { // OK } try { auftrag.setBemerkung(who); auftragDao.update(auftrag); fail("AccessException expected: " + who + " users should not have update access to orders."); } catch (final AccessException ex) { // OK } }
final AuftragDO auftrag = new AuftragDO(); AuftragsPositionDO auftragsPosition = new AuftragsPositionDO(); auftragsPosition.setTitel("Pos 1");
private AuftragDO createAuftrag(String kundeName, String kundeText, String projektName, String projektKundename) { AuftragDO auftrag = new AuftragDO(); if (kundeName != null) { KundeDO kunde = new KundeDO(); kunde.setName(kundeName); auftrag.setKunde(kunde); } auftrag.setKundeText(kundeText); if (projektName != null) { ProjektDO projekt = new ProjektDO(); projekt.setName(projektName); if (projektKundename != null) { KundeDO kunde = new KundeDO(); kunde.setName(projektKundename); projekt.setKunde(kunde); } auftrag.setProjekt(projekt); } return auftrag; } }
@Test public void getProjektKundeAsString() { AuftragDO auftrag = createAuftrag("Micromata", "ACME", "ProjectForge", "Hurzel ltd."); assertEquals("ACME; Micromata; Hurzel ltd. - ProjectForge", auftrag.getProjektKundeAsString()); auftrag = new AuftragDO(); assertEquals("", auftrag.getProjektKundeAsString()); auftrag = createAuftrag(null, "ACME", "ProjectForge", "Hurzel ltd."); assertEquals("ACME; Hurzel ltd. - ProjectForge", auftrag.getProjektKundeAsString()); auftrag = createAuftrag("Micromata", null, "ProjectForge", "Hurzel ltd."); assertEquals("Micromata; Hurzel ltd. - ProjectForge", auftrag.getProjektKundeAsString()); auftrag = createAuftrag(null, null, "ProjectForge", "Hurzel ltd."); assertEquals("Hurzel ltd. - ProjectForge", auftrag.getProjektKundeAsString()); auftrag = createAuftrag(null, null, "ProjectForge", null); assertEquals("ProjectForge", auftrag.getProjektKundeAsString()); auftrag = createAuftrag("Micromata", "ACME", "ProjectForge", "Micromata"); assertEquals("ACME; Micromata - ProjectForge", auftrag.getProjektKundeAsString()); }
AuftragDO auftrag1 = new AuftragDO(); auftrag1.setNummer(auftragDao.getNextNumber(auftrag1)); auftragDao.setContactPerson(auftrag1, getUserId(TEST_PROJECT_MANAGER_USER));
AuftragDO auftrag1 = new AuftragDO(); auftrag1.setNummer(auftragDao.getNextNumber(auftrag1)); auftragDao.setContactPerson(auftrag1, getUserId(TEST_FINANCE_USER)); AuftragDO auftrag2 = new AuftragDO(); auftrag2.setNummer(auftragDao.getNextNumber(auftrag2)); auftragDao.setContactPerson(auftrag2, getUserId(TEST_PROJECT_MANAGER_USER)); AuftragDO auftrag3 = new AuftragDO(); auftrag3.setNummer(auftragDao.getNextNumber(auftrag3)); auftragDao.setContactPerson(auftrag3, getUserId(TEST_PROJECT_MANAGER_USER));
projekt = projektDao.getById(id); AuftragDO auftrag = new AuftragDO(); auftrag.setNummer(auftragDao.getNextNumber(auftrag)); auftrag.setProjekt(projekt);
Serializable id = projektDao.save(projekt1); projekt1 = projektDao.getById(id); AuftragDO auftrag1 = new AuftragDO(); auftrag1.setNummer(auftragDao.getNextNumber(auftrag1)); auftrag1.setProjekt(projekt1); id = projektDao.save(projekt2); projekt2 = projektDao.getById(id); AuftragDO auftrag2 = new AuftragDO(); auftrag2.setNummer(auftragDao.getNextNumber(auftrag2)); auftrag2.setProjekt(projekt2);
@Test public void testOrderPositions() { initialize(); logon(getUser(TEST_FINANCE_USER)); final AuftragDO auftrag = new AuftragDO() .addPosition(new AuftragsPositionDO().setTask(getTask("TBT-5.1")).setTitel("Pos 1")) .addPosition(new AuftragsPositionDO().setTask(getTask("TBT-5.2.1.1")).setTitel("Pos 2")); auftragDao.save(auftrag.setNummer(auftragDao.getNextNumber(auftrag))); logon(getUser(TEST_USER)); TimesheetDO sheet = createNewSheet(); save(sheet.setTask(getTask("TBT-5")), "timesheet.error.taskNotBookable.orderPositionsFoundInSubTasks"); timesheetDao.save(sheet.setTask(getTask("TBT-5.1"))); timesheetDao.save(createNewSheet().setTask(getTask("TBT-5.1.1"))); timesheetDao.save(createNewSheet().setTask(getTask("TBT-5.1.2"))); sheet = createNewSheet(); save(sheet.setTask(getTask("TBT-5.2")), "timesheet.error.taskNotBookable.orderPositionsFoundInSubTasks"); save(sheet.setTask(getTask("TBT-5.2.1")), "timesheet.error.taskNotBookable.orderPositionsFoundInSubTasks"); timesheetDao.save(sheet.setTask(getTask("TBT-5.2.1.1"))); }