@Test
  public void testSaveTask() throws Exception {

    // first create and save a user
    final User user = new User("xXx", "vin", "disel", "*****@*****.**");
    transactionHelper.executeInTransaction(
        new VoidRunnable() {
          @Override
          public void doRun(final EntityManager entityManager) throws Exception {
            transactionHelper.persist(user);
          }
        });

    // we expect the database to be empty
    Assert.assertEquals(0, taskDao.loadAll().size());
    // write access must be executed within a transaction
    transactionHelper.executeInTransaction(
        new VoidRunnable() {
          @Override
          public void doRun(final EntityManager entityManager) throws Exception {
            final Task task = new Task("xyz", Category.IDEA, false, user);
            taskDao.persist(task);
          }
        });

    Assert.assertEquals(1, taskDao.loadAll().size());
  }
示例#2
0
  @Test
  public void findTasksByUserId() throws Exception {
    List<Task> tasks = taskDao.findByUserId(1L, new Sort(Direction.ASC, "id"));
    assertEquals(5, tasks.size());
    assertEquals(new Long(1), tasks.get(0).getId());

    tasks = taskDao.findByUserId(99999L, new Sort(Direction.ASC, "id"));
    assertEquals(0, tasks.size());
  }
 private synchronized void initialize() // @BeforeClass not possible because DAOs are needed.
     {
   if (initialized == true) {
     return;
   }
   initialized = true;
   logon(getUser(TEST_ADMIN_USER));
   TaskDO task;
   task = initTestDB.addTask("TimesheetBookingTest", "root");
   final GroupTaskAccessDO access =
       new GroupTaskAccessDO()
           .setGroup(initTestDB.addGroup("TBT", TEST_USER))
           .addAccessEntry(new AccessEntryDO(AccessType.OWN_TIMESHEETS, true, true, true, true))
           .setTask(task);
   accessDao.save(access);
   logon(getUser(TEST_FINANCE_USER));
   taskDao.update(initTestDB.addTask("TBT-1", "TimesheetBookingTest"));
   taskDao.update(initTestDB.addTask("TBT-1.1", "TBT-1").setStatus(TaskStatus.C));
   taskDao.markAsDeleted(initTestDB.addTask("TBT-1.2", "TBT-1"));
   taskDao.update(initTestDB.addTask("TBT-1.2.1", "TBT-1.2"));
   taskDao.update(
       initTestDB
           .addTask("TBT-2", "TimesheetBookingTest")
           .setTimesheetBookingStatus(TimesheetBookingStatus.TREE_CLOSED));
   taskDao.update(
       initTestDB
           .addTask("TBT-2.1", "TBT-2")
           .setTimesheetBookingStatus(TimesheetBookingStatus.OPENED));
   taskDao.update(
       initTestDB
           .addTask("TBT-3", "TimesheetBookingTest")
           .setTimesheetBookingStatus(TimesheetBookingStatus.ONLY_LEAFS));
   initTestDB.addTask("TBT-3.1", "TBT-3");
   initTestDB.addTask("TBT-3.1.1", "TBT-3.1");
   initTestDB.addTask("TBT-3.1.2", "TBT-3.1");
   initTestDB.addTask("TBT-3.2", "TBT-3");
   taskDao.update(
       initTestDB
           .addTask("TBT-4", "TimesheetBookingTest")
           .setTimesheetBookingStatus(TimesheetBookingStatus.NO_BOOKING));
   taskDao.update(
       initTestDB
           .addTask("TBT-4.1", "TBT-4")
           .setTimesheetBookingStatus(TimesheetBookingStatus.INHERIT));
   taskDao.update(
       initTestDB
           .addTask("TBT-4.1.1", "TBT-4.1")
           .setTimesheetBookingStatus(TimesheetBookingStatus.OPENED));
   initTestDB.addTask("TBT-5", "TimesheetBookingTest");
   initTestDB.addTask("TBT-5.1", "TBT-5");
   initTestDB.addTask("TBT-5.1.1", "TBT-5.1");
   initTestDB.addTask("TBT-5.1.2", "TBT-5.1");
   initTestDB.addTask("TBT-5.2", "TBT-5");
   initTestDB.addTask("TBT-5.2.1", "TBT-5.2");
   initTestDB.addTask("TBT-5.2.1.1", "TBT-5.2.1");
 }
示例#4
0
 /** To-one relationship, resolved on first access. */
 public Task getTask() {
   String __key = this.taskId;
   if (task__resolvedKey == null || task__resolvedKey != __key) {
     if (daoSession == null) {
       throw new DaoException("Entity is detached from DAO context");
     }
     TaskDao targetDao = daoSession.getTaskDao();
     Task taskNew = targetDao.load(__key);
     synchronized (this) {
       task = taskNew;
       task__resolvedKey = __key;
     }
   }
   return task;
 }
示例#5
0
	/**
	 * 获取任务记录[查询、分页、排序].
	 * @param userId
	 * @param searchParams
	 * @param pageNumber
	 * @param pageSize
	 * @param sortType
	 * @return
	 */
	public Page<Task> getUserTask(Long userId, Map<String, Object> searchParams, int pageNumber, int pageSize,
			String sortType) {
		PageRequest pageRequest = buildPageRequest(pageNumber, pageSize, sortType);
		Specification<Task> spec = buildSpecification(userId, searchParams);

		return taskDao.findAll(spec, pageRequest);
	}
  @Test
  public void testFindForCategory() throws Exception {

    // first create and save a user
    final User user = new User("xXx", "vin", "disel", "*****@*****.**");
    transactionHelper.executeInTransaction(
        new VoidRunnable() {
          @Override
          public void doRun(final EntityManager entityManager) throws Exception {
            transactionHelper.persist(user);
          }
        });

    final Task task1 = new Task("aaa", Category.TODO, true, user);

    // we expect the database to be empty
    Assert.assertEquals(0, taskDao.loadAll().size());
    // write access must be executed within a transaction
    transactionHelper.executeInTransaction(
        new VoidRunnable() {
          @Override
          public void doRun(final EntityManager entityManager) throws Exception {
            final Task task2 = new Task("ccc", Category.IDEA, false, user);
            final Task task3 = new Task("bbb", Category.IDEA, false, user);
            taskDao.persist(task1);
            taskDao.persist(task2);
            taskDao.persist(task3);
          }
        });

    Assert.assertEquals(3, taskDao.loadAll().size());

    Assert.assertEquals(0, taskDao.findForCategory(Category.PRIVATE).size());
    Assert.assertEquals(2, taskDao.findForCategory(Category.IDEA).size());

    final List<Task> tasks = taskDao.findForCategory(Category.TODO);
    Assert.assertEquals(1, tasks.size());
    Assert.assertEquals(task1.getId(), tasks.get(0).getId());
  }
  @Test
  public void testFindForUser() throws Exception {

    // first create and save a user
    final User user1 = new User("xXx", "vin", "disel", "*****@*****.**");
    final User user2 = new User("spiderman", "peter", "parker", "*****@*****.**");
    final User user3 = new User("ironman", "tony", "stark", "*****@*****.**");
    transactionHelper.executeInTransaction(
        new VoidRunnable() {
          @Override
          public void doRun(final EntityManager entityManager) throws Exception {
            transactionHelper.persist(user1);
            transactionHelper.persist(user2);
            transactionHelper.persist(user3);
          }
        });

    // we expect the database to be empty
    Assert.assertEquals(0, taskDao.loadAll().size());
    // write access must be executed within a transaction
    transactionHelper.executeInTransaction(
        new VoidRunnable() {
          @Override
          public void doRun(final EntityManager entityManager) throws Exception {
            final Task task1 = new Task("aaa", Category.IDEA, true, user1);
            final Task task2 = new Task("bbb", Category.TODO, false, user1);
            final Task task3 = new Task("ccc", Category.IDEA, false, user2);
            taskDao.persist(task1);
            taskDao.persist(task2);
            taskDao.persist(task3);
          }
        });

    Assert.assertEquals(3, taskDao.loadAll().size());

    Assert.assertEquals(2, taskDao.findForUser(user1).size());
    Assert.assertEquals(1, taskDao.findForUser(user2).size());
    Assert.assertEquals(0, taskDao.findForUser(user3).size());
  }
示例#8
0
	/**
	 * 获得所有的任务记录.
	 * @return
	 */
	public List<Task> getAllTask() {
		return (List<Task>) taskDao.findAll();
	}
示例#9
0
	/**
	 * 单个删除任务记录.
	 * @param id
	 */
	@Transactional(readOnly=false)
	public void deleteTask(Long id) {
		taskDao.delete(id);
	}
示例#10
0
	/**
	 * 保存任务信息.
	 * @param entity
	 */
	public void saveTask(Task entity) {
		taskDao.save(entity);
	}
示例#11
0
	/**
	 * 根据ID获得任务记录.
	 * @param id
	 * @return
	 */
	public Task getTask(Long id) {
		return taskDao.findOne(id);
	}