@Test public void testWhenCreaturesIsAttackedByNonPlayerEventIsPassed() { EntityDamageByEntityEvent event = new EntityDamageByEntityEvent(mock(Creeper.class), mockCreature, null, 10.0); systemUnderTest.onEntityDamage(event); Assert.assertFalse(event.isCancelled()); }
@Test public void testWhenMonstersAreAttackedByUntrustedPlayersTheyStillGetHurt() { playerIsUntrusted(); EntityDamageByEntityEvent event = new EntityDamageByEntityEvent(mockPlayer, mock(Monster.class), null, 10.0); systemUnderTest.onEntityDamage(event); Assert.assertFalse(event.isCancelled()); }
@Test public void testAdminCanDamageCreaturesWhenInChunk() { playerIsAdmin(); EntityDamageByEntityEvent event = new EntityDamageByEntityEvent(mockPlayer, mockCreature, null, 10.0); systemUnderTest.onEntityDamage(event); Assert.assertFalse(event.isCancelled()); }
@Test public void testTrustedPlayerCanDamageCreaturesWithProjectilesWhenInChunk() { playerIsTrusted(); playerThrewProjectile(); EntityDamageByEntityEvent event = new EntityDamageByEntityEvent(mockProjectile, mockCreature, null, 10.0); systemUnderTest.onEntityDamage(event); Assert.assertFalse(event.isCancelled()); }
@Test public void testWhenCreaturesIsAttackedByNonPlayerWithProjectileEventIsPassed() { Skeleton mockSkeleton = mock(Skeleton.class); Projectile mockAttacker = mock(Projectile.class); when(mockAttacker.getShooter()).thenReturn(mockSkeleton); EntityDamageByEntityEvent event = new EntityDamageByEntityEvent(mockAttacker, mockCreature, null, 10.0); systemUnderTest.onEntityDamage(event); Assert.assertFalse(event.isCancelled()); }
@Test public void testUntrustedPlayerCannotDamageCreaturesWhenInChunk() { playerIsUntrusted(); EntityDamageByEntityEvent event = new EntityDamageByEntityEvent(mockPlayer, mockCreature, null, 10.0); systemUnderTest.onEntityDamage(event); Assert.assertTrue(event.isCancelled()); verify(mockPlayer) .sendMessage("§eYou do not have APlayer's permission to hurt creatures here."); }