예제 #1
0
 @Test
 public void getByNameFailsForUnknownTask() {
   try {
     container.getByName("unknown");
     fail();
   } catch (UnknownTaskException e) {
     assertThat(e.getMessage(), equalTo("Task with name 'unknown' not found in <project>."));
   }
 }
예제 #2
0
  @Test
  public void addsTaskWithMap() {
    final Map<String, ?> options = GUtil.map("option", "value");
    final Task task = task("task");

    context.checking(
        new Expectations() {
          {
            one(taskFactory).createTask(project, options);
            will(returnValue(task));
          }
        });
    assertThat(container.add(options), sameInstance(task));
    assertThat(container.getByName("task"), sameInstance(task));
  }
예제 #3
0
  @Test
  public void replacesTaskWithName() {
    final Map<String, ?> options = GUtil.map(Task.TASK_NAME, "task");
    final Task task = task("task");

    context.checking(
        new Expectations() {
          {
            one(taskFactory).createTask(project, options);
            will(returnValue(task));
          }
        });
    assertThat(container.replace("task"), sameInstance(task));
    assertThat(container.getByName("task"), sameInstance(task));
  }
예제 #4
0
  @Test
  public void canReplaceDuplicateTask() {
    addTask("task");

    final Task newTask = task("task");
    context.checking(
        new Expectations() {
          {
            one(taskFactory).createTask(project, GUtil.map(Task.TASK_NAME, "task"));
            will(returnValue(newTask));
          }
        });

    container.replace("task");
    assertThat(container.getByName("task"), sameInstance(newTask));
  }
예제 #5
0
  @Test
  public void cannotAddDuplicateTask() {
    final Task task = addTask("task");

    context.checking(
        new Expectations() {
          {
            one(taskFactory).createTask(project, GUtil.map(Task.TASK_NAME, "task"));
            will(returnValue(task("task")));
          }
        });

    try {
      container.add("task");
      fail();
    } catch (InvalidUserDataException e) {
      assertThat(
          e.getMessage(), equalTo("Cannot add [task2] as a task with that name already exists."));
    }

    assertThat(container.getByName("task"), sameInstance(task));
  }