예제 #1
0
  @Test
  public void addWorkers() {

    Person worker1 = new Person(crs.getModel());
    Person worker2 = new Person(crs.getModel());

    assertEquals(crs.getWorkers().size(), 2); // it starts with two
    PlantListener fakeListener =
        mock(PlantListener.class); // addSalesDepartmentListener a fake listener
    crs.addListener(fakeListener);
    crs.addWorkers(worker1, worker2);
    worker1.hired(crs.getOwner(), 9999999);
    worker2.hired(crs.getOwner(), 9999999);
    assertEquals(crs.getWorkers().size(), 4);
    assertTrue(crs.getWorkers().contains(worker1));
    assertTrue(crs.getWorkers().contains(worker2));
    Mockito.verify(fakeListener, times(1))
        .changeInWorkforceEvent(
            any(Plant.class),
            any(Integer.class),
            any(
                Integer
                    .class)); // make sure it was called just once!!! That's the all point of this
                              // method
  }