How to use DonkeyMock class of be.seeseemelk.mockbukkit.entity package

Best MockBukkit code snippet using be.seeseemelk.mockbukkit.entity.DonkeyMock

Source:WorldMockTest.java Github

copy

Full Screen

...13import be.seeseemelk.mockbukkit.entity.ChickenMock;14import be.seeseemelk.mockbukkit.entity.CodMock;15import be.seeseemelk.mockbukkit.entity.CowMock;16import be.seeseemelk.mockbukkit.entity.CreeperMock;17import be.seeseemelk.mockbukkit.entity.DonkeyMock;18import be.seeseemelk.mockbukkit.entity.EggMock;19import be.seeseemelk.mockbukkit.entity.EndermanMock;20import be.seeseemelk.mockbukkit.entity.ExperienceOrbMock;21import be.seeseemelk.mockbukkit.entity.FireworkMock;22import be.seeseemelk.mockbukkit.entity.FoxMock;23import be.seeseemelk.mockbukkit.entity.FrogMock;24import be.seeseemelk.mockbukkit.entity.GiantMock;25import be.seeseemelk.mockbukkit.entity.GhastMock;26import be.seeseemelk.mockbukkit.entity.GoatMock;27import be.seeseemelk.mockbukkit.entity.ItemEntityMock;28import be.seeseemelk.mockbukkit.entity.LlamaMock;29import be.seeseemelk.mockbukkit.entity.MuleMock;30import be.seeseemelk.mockbukkit.entity.MushroomCowMock;31import be.seeseemelk.mockbukkit.entity.PigMock;32import be.seeseemelk.mockbukkit.entity.PufferFishMock;33import be.seeseemelk.mockbukkit.entity.SalmonMock;34import be.seeseemelk.mockbukkit.entity.SheepMock;35import be.seeseemelk.mockbukkit.entity.SkeletonHorseMock;36import be.seeseemelk.mockbukkit.entity.SkeletonMock;37import be.seeseemelk.mockbukkit.entity.SpiderMock;38import be.seeseemelk.mockbukkit.entity.StrayMock;39import be.seeseemelk.mockbukkit.entity.TadpoleMock;40import be.seeseemelk.mockbukkit.entity.TropicalFishMock;41import be.seeseemelk.mockbukkit.entity.WardenMock;42import be.seeseemelk.mockbukkit.entity.WitherSkeletonMock;43import be.seeseemelk.mockbukkit.entity.WolfMock;44import be.seeseemelk.mockbukkit.entity.ZombieHorseMock;45import be.seeseemelk.mockbukkit.entity.ZombieMock;46import com.google.common.io.ByteArrayDataOutput;47import com.google.common.io.ByteStreams;48import org.bukkit.Chunk;49import org.bukkit.Difficulty;50import org.bukkit.Effect;51import org.bukkit.GameRule;52import org.bukkit.Location;53import org.bukkit.Material;54import org.bukkit.World;55import org.bukkit.block.Biome;56import org.bukkit.block.Block;57import org.bukkit.block.data.BlockData;58import org.bukkit.entity.Entity;59import org.bukkit.entity.EntityType;60import org.bukkit.entity.Horse;61import org.bukkit.entity.Item;62import org.bukkit.entity.LivingEntity;63import org.bukkit.entity.Player;64import org.bukkit.entity.Sheep;65import org.bukkit.entity.Zombie;66import org.bukkit.event.entity.CreatureSpawnEvent;67import org.bukkit.event.entity.ItemSpawnEvent;68import org.bukkit.event.entity.ProjectileLaunchEvent;69import org.bukkit.event.weather.ThunderChangeEvent;70import org.bukkit.event.weather.WeatherChangeEvent;71import org.bukkit.event.world.TimeSkipEvent;72import org.bukkit.inventory.ItemStack;73import org.junit.jupiter.api.AfterEach;74import org.junit.jupiter.api.BeforeEach;75import org.junit.jupiter.api.Test;76import java.util.List;77import static org.junit.jupiter.api.Assertions.assertEquals;78import static org.junit.jupiter.api.Assertions.assertFalse;79import static org.junit.jupiter.api.Assertions.assertInstanceOf;80import static org.junit.jupiter.api.Assertions.assertNotEquals;81import static org.junit.jupiter.api.Assertions.assertNotNull;82import static org.junit.jupiter.api.Assertions.assertSame;83import static org.junit.jupiter.api.Assertions.assertThrows;84import static org.junit.jupiter.api.Assertions.assertThrowsExactly;85import static org.junit.jupiter.api.Assertions.assertTrue;86class WorldMockTest87{88 private ServerMock server;89 @BeforeEach90 void setUp()91 {92 server = MockBukkit.mock();93 }94 @AfterEach95 void tearDown()96 {97 MockBukkit.unmock();98 }99 @Test100 void getBlockAt_StandardWorld_DefaultBlocks()101 {102 WorldMock world = new WorldMock(Material.DIRT, 3);103 assertEquals(Material.BEDROCK, world.getBlockAt(0, 0, 0).getType());104 assertEquals(Material.DIRT, world.getBlockAt(0, 1, 0).getType());105 assertEquals(Material.DIRT, world.getBlockAt(0, 2, 0).getType());106 assertEquals(Material.DIRT, world.getBlockAt(0, 3, 0).getType());107 assertEquals(Material.AIR, world.getBlockAt(0, 4, 0).getType());108 }109 @Test110 void getBlockAt_BlockChanged_BlockChanged()111 {112 WorldMock world = new WorldMock();113 assertEquals(Material.AIR, world.getBlockAt(0, 10, 0).getType());114 world.getBlockAt(0, 10, 0).setType(Material.BIRCH_WOOD);115 assertEquals(Material.BIRCH_WOOD, world.getBlockAt(0, 10, 0).getType());116 }117 @Test118 void getBlockAt_AnyBlock_LocationSet()119 {120 WorldMock world = new WorldMock();121 BlockMock block = world.getBlockAt(1, 2, 3);122 Location location = block.getLocation();123 assertEquals(1, location.getBlockX());124 assertEquals(2, location.getBlockY());125 assertEquals(3, location.getBlockZ());126 assertEquals(world, block.getWorld());127 }128 @Test129 void getSpawnLocation_Default_JustAboveDirt()130 {131 WorldMock world = new WorldMock();132 Location spawn = world.getSpawnLocation();133 assertNotNull(spawn);134 assertEquals(Material.AIR, world.getBlockAt(spawn.getBlockX(), spawn.getBlockY(), spawn.getBlockZ()).getType());135 assertEquals(Material.GRASS, world.getBlockAt(spawn.getBlockX(), spawn.getBlockY() - 1, spawn.getBlockZ()).getType());136 }137 @Test138 void setSpawnLocation_SomeNewLocation_LocationChanged()139 {140 WorldMock world = new WorldMock();141 Location spawn = world.getSpawnLocation().clone();142 world.setSpawnLocation(spawn.getBlockX() + 10, spawn.getBlockY() + 10, spawn.getBlockZ() + 10);143 assertEquals(spawn.getBlockX() + 10, world.getSpawnLocation().getBlockX());144 assertEquals(spawn.getBlockY() + 10, world.getSpawnLocation().getBlockY());145 assertEquals(spawn.getBlockZ() + 10, world.getSpawnLocation().getBlockZ());146 world.setSpawnLocation(spawn);147 assertEquals(spawn.getBlockX(), world.getSpawnLocation().getBlockX());148 assertEquals(spawn.getBlockY(), world.getSpawnLocation().getBlockY());149 assertEquals(spawn.getBlockZ(), world.getSpawnLocation().getBlockZ());150 }151 @Test152 void getEntities_NoEntities_EmptyList()153 {154 WorldMock world = new WorldMock();155 List<Entity> entities = world.getEntities();156 assertNotNull(entities);157 assertEquals(0, entities.size());158 }159 @Test160 void getEntities_OnePlayerInWorld_ListContainsOnlyPlayer()161 {162 World world = server.addSimpleWorld("world");163 server.addSimpleWorld("otherWorld");164 Player player = server.addPlayer();165 player.teleport(world.getSpawnLocation());166 List<Entity> entities = world.getEntities();167 assertNotNull(entities);168 assertEquals(1, entities.size());169 assertSame(player, entities.get(0));170 }171 @Test172 void getEntities_OnePlayerInDifferentWorld_EmptyList()173 {174 World world = server.addSimpleWorld("world");175 World otherWorld = server.addSimpleWorld("otherWorld");176 Player player = server.addPlayer();177 player.teleport(otherWorld.getSpawnLocation());178 List<Entity> entities = world.getEntities();179 assertNotNull(entities);180 assertEquals(0, entities.size());181 }182 @Test183 void getLivingEntities()184 {185 WorldMock world = new WorldMock();186 world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ZOMBIE);187 world.dropItem(new Location(world, 0, 0, 0), new ItemStack(Material.STONE));188 assertEquals(2, world.getEntities().size());189 assertEquals(1, world.getLivingEntities().size());190 }191 @Test192 void getLivingEntities_EmptyList()193 {194 WorldMock world = new WorldMock();195 List<LivingEntity> entities = world.getLivingEntities();196 assertNotNull(entities);197 assertEquals(0, entities.size());198 }199 @Test200 void getEntitiesByClass()201 {202 WorldMock world = new WorldMock();203 world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ZOMBIE);204 world.dropItem(new Location(world, 0, 0, 0), new ItemStack(Material.STONE));205 assertEquals(1, world.getEntitiesByClass(ZombieMock.class).size());206 assertEquals(1, world.getEntitiesByClass(ItemEntityMock.class).size());207 }208 @Test209 void getEntitiesByClasses()210 {211 WorldMock world = new WorldMock();212 world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ZOMBIE);213 world.dropItem(new Location(world, 0, 0, 0), new ItemStack(Material.STONE));214 assertEquals(1, world.getEntitiesByClasses(ZombieMock.class).size());215 assertEquals(1, world.getEntitiesByClasses(ItemEntityMock.class).size());216 assertEquals(2, world.getEntitiesByClasses(ZombieMock.class, ItemEntityMock.class).size());217 }218 @Test219 @SuppressWarnings("unchecked")220 void getEntitiesByClasses_Generic()221 {222 WorldMock world = new WorldMock();223 world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ZOMBIE);224 world.dropItem(new Location(world, 0, 0, 0), new ItemStack(Material.STONE));225 assertEquals(1, world.getEntitiesByClass(new Class[]{ ZombieMock.class }).size());226 assertEquals(1, world.getEntitiesByClass(new Class[]{ ItemEntityMock.class }).size());227 assertEquals(2, world.getEntitiesByClass(new Class[]{ ZombieMock.class, ItemEntityMock.class }).size());228 }229 @Test230 void getChunkAt_DifferentLocations_DifferentChunks()231 {232 WorldMock world = server.addSimpleWorld("world");233 ChunkMock chunk1 = world.getChunkAt(0, 0);234 ChunkMock chunk2 = world.getChunkAt(1, 0);235 assertNotEquals(chunk1, chunk2);236 }237 @Test238 void getChunkAt_SameLocations_EqualsChunks()239 {240 WorldMock world = server.addSimpleWorld("world");241 ChunkMock chunk1 = world.getChunkAt(0, 0);242 ChunkMock chunk2 = world.getChunkAt(0, 0);243 assertEquals(chunk1, chunk2);244 }245 @Test246 void getName_NameSet_NameExactly()247 {248 WorldMock world = new WorldMock();249 world.setName("world name");250 assertEquals("world name", world.getName());251 }252 @Test253 void setGameRule_CorrectValue_GameRuleSet()254 {255 WorldMock world = new WorldMock();256 assertTrue(world.setGameRule(GameRule.DO_DAYLIGHT_CYCLE, true));257 assertTrue(world.getGameRuleValue(GameRule.DO_DAYLIGHT_CYCLE));258 assertTrue(world.setGameRule(GameRule.DO_DAYLIGHT_CYCLE, false));259 assertFalse(world.getGameRuleValue(GameRule.DO_DAYLIGHT_CYCLE));260 }261 @Test262 void spawnZombieTest()263 {264 WorldMock world = new WorldMock();265 Location location = new Location(world, 100, 20, 50);266 Entity zombie = world.spawnEntity(location, EntityType.ZOMBIE);267 assertEquals(100, zombie.getLocation().getBlockX());268 assertEquals(20, zombie.getLocation().getBlockY());269 assertEquals(50, zombie.getLocation().getBlockZ());270 assertTrue(world.getEntities().size() > 0);271 }272 @Test273 void spawnHorseTest()274 {275 WorldMock world = new WorldMock();276 Location location = new Location(world, 100, 20, 50);277 Entity horse = world.spawnEntity(location, EntityType.HORSE);278 assertTrue(world.getEntities().size() > 0);279 assertInstanceOf(Horse.class, horse);280 }281 @Test282 void onCreated_WeatherDurationSetToZero()283 {284 WorldMock world = new WorldMock();285 assertEquals(0, world.getWeatherDuration(), "Weather duration should be zero");286 }287 @Test288 void setWeatherDuration_AnyPositiveValue_WeatherDurationSet()289 {290 WorldMock world = new WorldMock();291 int duration = 5;292 world.setWeatherDuration(duration);293 assertEquals(duration, world.getWeatherDuration(), "Weather duration should be set");294 }295 @Test296 void onCreated_NotStorming()297 {298 WorldMock world = new WorldMock();299 assertFalse(world.hasStorm(), "The world should not be storming");300 }301 @Test302 void setStorm_True_Storming()303 {304 WorldMock world = new WorldMock();305 assertFalse(world.hasStorm());306 world.setStorm(true);307 assertTrue(world.hasStorm(), "The world should be storming");308 }309 @Test310 void onCreated_ThunderDurationSetToZero()311 {312 WorldMock world = new WorldMock();313 assertEquals(0, world.getThunderDuration(), "Weather duration should be zero");314 assertFalse(world.isThundering());315 }316 @Test317 void setThunderDuration_AnyPositiveValue_ShouldBeThundering()318 {319 WorldMock world = new WorldMock();320 int duration = 20;321 world.setThunderDuration(duration);322 assertEquals(duration, world.getThunderDuration(), "Weather duration should be more than zero");323 assertFalse(world.isThundering());324 }325 @Test326 void setThundering_True_ThunderDurationShouldBePositive()327 {328 WorldMock world = new WorldMock();329 world.setThundering(true);330 assertEquals(0, world.getThunderDuration(), "Weather duration should be reset to zero");331 assertTrue(world.isThundering());332 }333 @Test334 void onCreated_TimeSetToBeZero()335 {336 WorldMock world = new WorldMock();337 assertEquals(0L, world.getFullTime(), "World time should be zero");338 assertEquals(0L, world.getTime(), "Day time should be zero");339 }340 @Test341 void setTime_DayTimeValue()342 {343 WorldMock world = new WorldMock();344 world.setTime(20L);345 assertEquals(20L, world.getTime());346 assertEquals(20L, world.getFullTime());347 }348 @Test349 void setTime_FullTimeValue()350 {351 WorldMock world = new WorldMock();352 world.setFullTime(3L * 24000L + 20L);353 assertEquals(20L, world.getTime());354 assertEquals(3L * 24000L + 20L, world.getFullTime());355 }356 @Test357 void setTime_FullTimeShouldBeAdjustedWithDayTime()358 {359 WorldMock world = new WorldMock();360 world.setFullTime(3L * 24000L + 20L);361 world.setTime(12000L);362 assertEquals(12000L, world.getTime());363 assertEquals(3L * 24000L + 12000L, world.getFullTime());364 }365 @Test366 void setTime_Event_Triggered()367 {368 WorldMock world = new WorldMock();369 world.setTime(6000L);370 world.setTime(10000L);371 server.getPluginManager().assertEventFired(TimeSkipEvent.class, event ->372 event.getSkipAmount() == 4000L && event.getSkipReason() == TimeSkipEvent.SkipReason.CUSTOM);373 }374 @Test375 void onCreated_EnvironmentSetToBeNormal()376 {377 WorldMock world = new WorldMock();378 assertEquals(World.Environment.NORMAL, world.getEnvironment(), "World environment type should be normal");379 }380 @Test381 void getLoadedChunks_EmptyWorldHasNoLoadedChunks()382 {383 WorldMock world = new WorldMock();384 assertEquals(0, world.getLoadedChunks().length);385 }386 @Test387 void isChunkLoaded_IsFalseForUnloadedChunk()388 {389 WorldMock world = new WorldMock();390 assertFalse(world.isChunkLoaded(0, 0));391 }392 @Test393 void isChunkloaded_IsTrueForLoadedChunk()394 {395 WorldMock world = new WorldMock();396 BlockMock block = world.getBlockAt(64, 64, 64);397 assertNotNull(block.getChunk());398 Chunk chunk = block.getChunk();399 assertTrue(world.isChunkLoaded(chunk.getX(), chunk.getZ()));400 }401 @Test402 void getWorldBorder_NotNull()403 {404 WorldMock worldMock = new WorldMock();405 assertNotNull(worldMock.getWorldBorder());406 }407 @Test408 void getBlockState_ChangeBlock()409 {410 WorldMock world = new WorldMock(Material.DIRT, 3);411 assertEquals(Material.DIRT, world.getType(0, 1, 0));412 Location location = new Location(world, 0, 1, 0);413 Block block = world.getBlockAt(0, 1, 0);414 BlockMock block2 = new BlockMock();415 block2.setBlockData(block.getBlockData());416 BlockStateMock state = BlockStateMock.mockState(block);417 block2.setState(state);418 assertEquals(block2.getState().getType(), world.getBlockState(0, 1, 0).getType());419 assertEquals(block2.getState().getType(), world.getBlockState(location).getType());420 }421 @Test422 void setBlock_ChangeBlock()423 {424 WorldMock world = new WorldMock(Material.DIRT, 3);425 Location location = new Location(world, 0, 1, 0);426 Block block = world.getBlockAt(0, 1, 0);427 BlockData data = block.getBlockData();428 assertEquals(data.getMaterial(), world.getBlockData(location).getMaterial());429 BlockDataMock mock = new BlockDataMock(Material.GRASS);430 BlockDataMock mock2 = new BlockDataMock(Material.GRASS_BLOCK);431 world.setBlockData(location, mock);432 assertEquals(Material.GRASS, world.getBlockData(location).getMaterial());433 assertEquals(Material.GRASS, world.getBlockData(0, 1, 0).getMaterial());434 assertEquals(Material.GRASS, world.getType(0, 1, 0));435 world.setBlockData(0, 1, 0, mock2);436 assertEquals(Material.GRASS_BLOCK, world.getBlockData(location).getMaterial());437 assertEquals(Material.GRASS_BLOCK, world.getType(location));438 world.setType(location, Material.BEDROCK);439 assertEquals(Material.BEDROCK, world.getType(location));440 world.setType(0, 1, 0, Material.DIRT);441 assertEquals(Material.DIRT, world.getType(location));442 }443 @Test444 void getDefaultBiome()445 {446 WorldMock world = new WorldMock(Material.GRASS_BLOCK, Biome.JUNGLE, 0, 256);447 Biome biome = world.getBiome(0, 0, 0);448 assertNotNull(biome);449 assertEquals(Biome.JUNGLE, biome);450 }451 @Test452 void getBiomeLegacy()453 {454 WorldMock world = new WorldMock(Material.GRASS_BLOCK, Biome.JUNGLE, 0, 256);455 Biome biome3d = world.getBiome(0, 0, 0);456 Biome biome2d = world.getBiome(0, 0);457 assertNotNull(biome3d);458 assertNotNull(biome2d);459 assertEquals(biome3d, biome2d);460 }461 @Test462 void setBiome()463 {464 WorldMock world = new WorldMock(Material.GRASS_BLOCK, Biome.JUNGLE, 0, 256);465 world.setBiome(0, 0, 0, Biome.DESERT);466 Biome biome = world.getBiome(0, 0, 0);467 assertEquals(Biome.DESERT, biome);468 }469 @Test470 void setBiome_CustomFails()471 {472 WorldMock world = new WorldMock(Material.GRASS_BLOCK, Biome.JUNGLE, 0, 256);473 assertThrows(IllegalArgumentException.class, () ->474 {475 world.setBiome(0, 0, 0, Biome.CUSTOM);476 });477 }478 @Test479 void worldPlayEffect()480 {481 WorldMock world = new WorldMock(Material.DIRT, 3);482 world.playEffect(new Location(world, 0, 0, 0), Effect.STEP_SOUND, Material.STONE);483 }484 @Test485 void testDropItem()486 {487 WorldMock world = new WorldMock(Material.DIRT, 3);488 ItemStack item = new ItemStack(Material.DIAMOND);489 Location location = new Location(world, 100, 100, 100);490 Item entity = world.dropItem(location, item);491 // Is this the same Item we wanted to drop?492 assertEquals(item, entity.getItemStack());493 // Does our Item exist in the correct World?494 assertTrue(world.getEntities().contains(entity));495 // Is it at the right location?496 assertEquals(location, entity.getLocation());497 }498 @Test499 void testDropItemNaturally()500 {501 WorldMock world = new WorldMock(Material.DIRT, 3);502 ItemStack item = new ItemStack(Material.EMERALD);503 Location location = new Location(world, 200, 100, 200);504 Item entity = world.dropItemNaturally(location, item);505 // Is this the same Item we wanted to drop?506 assertEquals(item, entity.getItemStack());507 // Does our Item exist in the correct World?508 assertTrue(world.getEntities().contains(entity));509 // Has the Location been slightly nudged?510 assertNotEquals(location, entity.getLocation());511 }512 @Test513 void testDropItemConsumer()514 {515 WorldMock world = new WorldMock(Material.DIRT, 3);516 ItemStack item = new ItemStack(Material.BEACON);517 Location location = new Location(world, 200, 50, 500);518 Item entity = world.dropItem(location, item, n ->519 {520 // This consumer should be invoked BEFORE the actually spawned.521 assertFalse(world.getEntities().contains(n));522 });523 assertEquals(item, entity.getItemStack());524 assertTrue(world.getEntities().contains(entity));525 }526 @Test527 void drop_Item_CorrectEvent()528 {529 WorldMock world = new WorldMock();530 world.dropItem(new Location(world, 0, 5, 0), new ItemStack(Material.STONE));531 server.getPluginManager().assertEventFired(ItemSpawnEvent.class, (e) -> !e.isCancelled());532 }533 @Test534 void spawn_NullLocation_ThrowsException()535 {536 WorldMock world = new WorldMock();537 assertThrowsExactly(IllegalArgumentException.class, () -> world.spawn(null, Zombie.class));538 }539 @Test540 void spawn_NullClass_ThrowsException()541 {542 WorldMock world = new WorldMock();543 assertThrowsExactly(IllegalArgumentException.class, () -> world.spawn(new Location(world, 0, 5, 0), null));544 }545 @Test546 void worldPlayEffect_NullData()547 {548 WorldMock world = new WorldMock(Material.DIRT, 3);549 Location loc = new Location(world, 0, 0, 0);550 assertThrows(IllegalArgumentException.class, () ->551 {552 world.playEffect(loc, Effect.STEP_SOUND, null);553 });554 }555 @Test556 void worldPlayEffect_IncorrectData()557 {558 WorldMock world = new WorldMock(Material.DIRT, 3);559 Location loc = new Location(world, 0, 0, 0);560 assertThrows(IllegalArgumentException.class, () ->561 {562 world.playEffect(loc, Effect.STEP_SOUND, 1.0f);563 });564 }565 @Test566 @SuppressWarnings("UnstableApiUsage")567 void testSendPluginMessage()568 {569 WorldMock world = new WorldMock(Material.DIRT, 3);570 MockPlugin plugin = MockBukkit.createMockPlugin();571 server.getMessenger().registerOutgoingPluginChannel(plugin, "BungeeCord");572 ByteArrayDataOutput out = ByteStreams.newDataOutput();573 out.writeUTF("Forward");574 out.writeUTF("ALL");575 out.writeUTF("MockBukkit");576 world.sendPluginMessage(plugin, "BungeeCord", out.toByteArray());577 }578 @Test579 void onCreated_WeatherDurations_Zero()580 {581 WorldMock world = new WorldMock();582 assertEquals(0, world.getWeatherDuration());583 assertEquals(0, world.getThunderDuration());584 assertEquals(0, world.getClearWeatherDuration());585 }586 @Test587 void onCreated_Weather()588 {589 WorldMock world = new WorldMock();590 assertTrue(world.isClearWeather());591 assertFalse(world.isThundering());592 assertFalse(world.hasStorm());593 }594 @Test595 void setStorm_ChangeState_CallsEvent()596 {597 WorldMock world = new WorldMock();598 world.setStorm(true);599 server.getPluginManager().assertEventFired(WeatherChangeEvent.class, event ->600 event.getWorld().equals(world) && event.toWeatherState());601 world.setStorm(false);602 server.getPluginManager().assertEventFired(WeatherChangeEvent.class, event ->603 event.getWorld().equals(world) && !event.toWeatherState());604 }605 @Test606 void setStorm_SameState_DoesntCallEvent()607 {608 WorldMock world = new WorldMock();609 world.setStorm(false);610 server.getPluginManager().assertEventNotFired(WeatherChangeEvent.class);611 }612 @Test613 void setStorm_SetsStorming()614 {615 WorldMock world = new WorldMock();616 world.setStorm(true);617 assertTrue(world.hasStorm());618 }619 @Test620 void setStorm_ResetsWeatherDuration()621 {622 WorldMock world = new WorldMock();623 world.setStorm(true);624 assertEquals(0, world.getWeatherDuration());625 }626 @Test627 void setStorm_ResetsClearWeatherDuration()628 {629 WorldMock world = new WorldMock();630 world.setStorm(true);631 assertEquals(0, world.getClearWeatherDuration());632 }633 @Test634 void setWeatherDuration_SetsDuration()635 {636 WorldMock world = new WorldMock();637 world.setWeatherDuration(10);638 assertEquals(10, world.getWeatherDuration());639 }640 @Test641 void setThundering_ChangeState_CallsEvent()642 {643 WorldMock world = new WorldMock();644 world.setThundering(true);645 server.getPluginManager().assertEventFired(ThunderChangeEvent.class, event ->646 event.getWorld().equals(world) && event.toThunderState());647 world.setThundering(false);648 server.getPluginManager().assertEventFired(ThunderChangeEvent.class, event ->649 event.getWorld().equals(world) && !event.toThunderState());650 }651 @Test652 void setThundering_SameState_DoesntCallEvent()653 {654 WorldMock world = new WorldMock();655 world.setThundering(false);656 server.getPluginManager().assertEventNotFired(ThunderChangeEvent.class);657 }658 @Test659 void setThundering_SetsThundering()660 {661 WorldMock world = new WorldMock();662 world.setThundering(true);663 assertTrue(world.isThundering());664 }665 @Test666 void setThundering_ResetsThunderingDuration()667 {668 WorldMock world = new WorldMock();669 world.setThundering(true);670 assertEquals(0, world.getThunderDuration());671 }672 @Test673 void setThundering_ResetsClearWeatherDuration()674 {675 WorldMock world = new WorldMock();676 world.setThundering(true);677 assertEquals(0, world.getClearWeatherDuration());678 }679 @Test680 void setThunderDuration_SetsDuration()681 {682 WorldMock world = new WorldMock();683 world.setThunderDuration(10);684 assertEquals(10, world.getThunderDuration());685 }686 @Test687 void isClearWeather_ClearWeather()688 {689 WorldMock world = new WorldMock();690 assertTrue(world.isClearWeather());691 }692 @Test693 void isClearWeather_Thundering_False()694 {695 WorldMock world = new WorldMock();696 world.setThundering(true);697 assertFalse(world.isClearWeather());698 }699 @Test700 void isClearWeather_Storming_False()701 {702 WorldMock world = new WorldMock();703 world.setStorm(true);704 assertFalse(world.isClearWeather());705 }706 @Test707 void spawn_AddedToEntities()708 {709 WorldMock world = new WorldMock();710 Entity zombie = world.spawnEntity(new Location(world, 0, 5, 0), EntityType.ZOMBIE);711 assertEquals(1, world.getEntities().size());712 assertEquals(zombie, world.getEntities().get(0));713 }714 @Test715 void spawn_CorrectLocation()716 {717 WorldMock world = new WorldMock();718 Location location = new Location(world, 100, 20, 50);719 Entity zombie = world.spawnEntity(location, EntityType.ZOMBIE);720 assertEquals(100, zombie.getLocation().getBlockX());721 assertEquals(20, zombie.getLocation().getBlockY());722 assertEquals(50, zombie.getLocation().getBlockZ());723 }724 @Test725 void spawn_ArmorStand_CorrectType()726 {727 WorldMock world = new WorldMock();728 Entity entity = world.spawnEntity(new Location(world, 0, 5, 0), EntityType.ARMOR_STAND);729 assertInstanceOf(ArmorStandMock.class, entity);730 }731 @Test732 void spawn_ArmorStand_CorrectEvent()733 {734 WorldMock world = new WorldMock();735 world.spawnEntity(new Location(world, 0, 5, 0), EntityType.ARMOR_STAND);736 server.getPluginManager().assertEventFired(CreatureSpawnEvent.class, (e) -> e.getSpawnReason() == CreatureSpawnEvent.SpawnReason.CUSTOM);737 server.getPluginManager().assertEventFired(CreatureSpawnEvent.class, (e) -> !e.isCancelled());738 }739 @Test740 void spawn_ExperienceOrb_CorrectType()741 {742 WorldMock world = new WorldMock();743 Entity entity = world.spawnEntity(new Location(world, 0, 5, 0), EntityType.EXPERIENCE_ORB);744 assertInstanceOf(ExperienceOrbMock.class, entity);745 }746 @Test747 void spawn_Firework_CorrectType()748 {749 WorldMock world = new WorldMock();750 Entity entity = world.spawnEntity(new Location(world, 0, 5, 0), EntityType.FIREWORK);751 assertInstanceOf(FireworkMock.class, entity);752 }753 @Test754 void spawn_Firework_CorrectEvent()755 {756 WorldMock world = new WorldMock();757 world.spawnEntity(new Location(world, 0, 5, 0), EntityType.FIREWORK);758 server.getPluginManager().assertEventFired(ProjectileLaunchEvent.class, (e) -> !e.isCancelled());759 }760 @Test761 void spawn_Item_ThrowsException()762 {763 WorldMock world = new WorldMock();764 assertThrowsExactly(IllegalArgumentException.class, () -> world.spawnEntity(new Location(world, 0, 5, 0), EntityType.DROPPED_ITEM));765 }766 @Test767 void spawn_Player_ThrowsException()768 {769 WorldMock world = new WorldMock();770 assertThrowsExactly(IllegalArgumentException.class, () -> world.spawnEntity(new Location(world, 0, 5, 0), EntityType.PLAYER));771 }772 @Test773 void spawn_Zombie_CorrectType()774 {775 WorldMock world = new WorldMock();776 Entity entity = world.spawnEntity(new Location(world, 0, 5, 0), EntityType.ZOMBIE);777 assertInstanceOf(ZombieMock.class, entity);778 }779 @Test780 void spawn_Zombie_CorrectEvent()781 {782 WorldMock world = new WorldMock();783 world.spawnEntity(new Location(world, 0, 5, 0), EntityType.ZOMBIE);784 server.getPluginManager().assertEventFired(CreatureSpawnEvent.class, (e) -> e.getSpawnReason() == CreatureSpawnEvent.SpawnReason.CUSTOM);785 server.getPluginManager().assertEventFired(CreatureSpawnEvent.class, (e) -> !e.isCancelled());786 }787 @Test788 void setDifficulty()789 {790 WorldMock world = new WorldMock(Material.DIRT, 3);791 assertNotNull(world.getDifficulty());792 world.setDifficulty(Difficulty.HARD);793 assertEquals(Difficulty.HARD, world.getDifficulty());794 }795 @Test796 void spawnMonster_Peaceful()797 {798 WorldMock world = new WorldMock(Material.DIRT, 3);799 world.setDifficulty(Difficulty.PEACEFUL);800 Entity zombie = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ZOMBIE);801 assertFalse(zombie.isValid());802 assertTrue(zombie.isDead());803 }804 @Test805 void spawnFriendly_Peaceful()806 {807 WorldMock world = new WorldMock(Material.DIRT, 3);808 world.setDifficulty(Difficulty.PEACEFUL);809 Entity armorStand = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ARMOR_STAND);810 assertTrue(armorStand.isValid());811 assertFalse(armorStand.isDead());812 }813 @Test814 void testSpawnSheep()815 {816 WorldMock world = new WorldMock(Material.DIRT, 3);817 Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.SHEEP);818 assertInstanceOf(SheepMock.class, entity);819 assertTrue(entity.isValid());820 }821 @Test822 void testSpawnAllay()823 {824 WorldMock world = new WorldMock(Material.DIRT, 3);825 Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ALLAY);826 assertInstanceOf(AllayMock.class, entity);827 assertTrue(entity.isValid());828 }829 @Test830 void testGetAllowAnimalsDefault()831 {832 WorldMock world = new WorldMock(Material.DIRT, 3);833 assertTrue(world.getAllowAnimals());834 }835 @Test836 void testGetAllowMonstersDefault()837 {838 WorldMock world = new WorldMock(Material.DIRT, 3);839 assertTrue(world.getAllowMonsters());840 }841 @Test842 void testSetSpawnFlags()843 {844 WorldMock world = new WorldMock(Material.DIRT, 3);845 world.setSpawnFlags(false, true);846 assertFalse(world.getAllowMonsters());847 assertTrue(world.getAllowAnimals());848 world.setSpawnFlags(true, false);849 assertTrue(world.getAllowMonsters());850 assertFalse(world.getAllowAnimals());851 }852 @Test853 void testCallSpawnEventOnDisallowedMonster()854 {855 WorldMock world = new WorldMock(Material.DIRT, 3);856 world.setSpawnFlags(false, true);857 Entity zombie = world.spawn(new Location(world, 0, 0, 0), Zombie.class, CreatureSpawnEvent.SpawnReason.NATURAL);858 assertFalse(zombie.isValid());859 assertTrue(zombie.isDead());860 }861 @Test862 void testCallSpawnEventOnDisallowedAnimal()863 {864 WorldMock world = new WorldMock(Material.DIRT, 3);865 world.setSpawnFlags(true, false);866 Entity sheep = world.spawn(new Location(world, 0, 0, 0), Sheep.class, CreatureSpawnEvent.SpawnReason.NATURAL);867 assertFalse(sheep.isValid());868 }869 @Test870 void testSpawnEnderman()871 {872 WorldMock world = new WorldMock(Material.DIRT, 3);873 Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ENDERMAN);874 assertInstanceOf(EndermanMock.class, entity);875 assertTrue(entity.isValid());876 }877 @Test878 void testSpawnWarden()879 {880 WorldMock world = new WorldMock(Material.DIRT, 3);881 Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.WARDEN);882 assertInstanceOf(WardenMock.class, entity);883 assertTrue(entity.isValid());884 }885 @Test886 void testSpawnDonkey()887 {888 WorldMock world = new WorldMock(Material.DIRT, 3);889 Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.DONKEY);890 assertInstanceOf(DonkeyMock.class, entity);891 assertTrue(entity.isValid());892 }893 @Test894 void testSpawnLlama()895 {896 WorldMock world = new WorldMock(Material.DIRT, 3);897 Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.LLAMA);898 assertInstanceOf(LlamaMock.class, entity);899 assertTrue(entity.isValid());900 }901 @Test902 void testSpawnMule()903 {904 WorldMock world = new WorldMock(Material.DIRT, 3);...

Full Screen

Full Screen

Source:DonkeyMockTest.java Github

copy

Full Screen

...6import org.junit.jupiter.api.BeforeEach;7import org.junit.jupiter.api.Test;8import java.util.UUID;9import static org.junit.jupiter.api.Assertions.assertEquals;10class DonkeyMockTest11{12 private ServerMock server;13 private DonkeyMock donkey;14 @BeforeEach15 void setUp()16 {17 server = MockBukkit.mock();18 donkey = new DonkeyMock(server, UUID.randomUUID());19 }20 @AfterEach21 void tearDown()22 {23 MockBukkit.unmock();24 }25 @Test26 void testVariant()27 {28 assertEquals(Horse.Variant.DONKEY, donkey.getVariant());29 }30}...

Full Screen

Full Screen

Source:DonkeyMock.java Github

copy

Full Screen

...3import org.bukkit.entity.Donkey;4import org.bukkit.entity.Horse;5import org.jetbrains.annotations.NotNull;6import java.util.UUID;7public class DonkeyMock extends ChestedHorseMock implements Donkey8{9 public DonkeyMock(@NotNull ServerMock server, @NotNull UUID uuid)10 {11 super(server, uuid);12 }13 @Override14 @Deprecated15 public Horse.@NotNull Variant getVariant()16 {17 return Horse.Variant.DONKEY;18 }19}...

Full Screen

Full Screen

DonkeyMock

Using AI Code Generation

copy

Full Screen

1package be.seeseemelk.mockbukkit;2import org.junit.jupiter.api.AfterEach;3import org.junit.jupiter.api.BeforeEach;4import org.junit.jupiter.api.Test;5import be.seeseemelk.mockbukkit.entity.DonkeyMock;6import static org.junit.jupiter.api.Assertions.*;7{8 private DonkeyMock donkey;9 public void setUp()10 {11 donkey = new DonkeyMock();12 }13 public void tearDown()14 {15 donkey = null;16 }17 public void testMockDonkey()18 {19 assertNotNull(donkey);20 }21}22package be.seeseemelk.mockbukkit.entity;23import org.bukkit.Location;24import org.bukkit.entity.Entity;25import org.bukkit.entity.EntityType;26import org.bukkit.entity.Horse;27import org.bukkit.entity.Horse.Variant;28import org.bukkit.entity.Horse.Color;29import org.bukkit.entity.Horse.Style;30{31 public DonkeyMock()32 {33 super(Variant.DONKEY);34 }35 public DonkeyMock(Location location)36 {37 super(location, Variant.DONKEY);38 }39 public EntityType getType()40 {41 return EntityType.DONKEY;42 }43}44package be.seeseemelk.mockbukkit.entity;45import org.bukkit.Location;46import org.bukkit.entity.Entity;47import org.bukkit.entity.EntityType;48import org.bukkit.entity.Horse;49import org.bukkit.entity.Horse.Variant;50import org.bukkit.entity.Horse.Color;51import org.bukkit.entity.Horse.Style;52{53 private Variant variant;54 private Color color;55 private Style style;56 private int jumpStrength;57 private int maxDomestication;58 private int domestication;59 private int maxTemper;60 private int temper;61 private boolean hasReproduced;62 private boolean chested;63 private boolean hasChest;64 private boolean eating;65 private boolean breeding;66 private boolean tamed;67 private boolean angry;68 private boolean saddle;69 private boolean armored;70 private boolean leashed;71 private boolean dead;72 private boolean sleeping;73 private boolean jumping;74 private boolean standing;75 private boolean eatingHay;76 private boolean eatingGrass;

Full Screen

Full Screen

DonkeyMock

Using AI Code Generation

copy

Full Screen

1import be.seeseemelk.mockbukkit.entity.DonkeyMock;2import org.bukkit.entity.Donkey;3import org.junit.Test;4import static org.junit.Assert.assertEquals;5public class TestDonkey {6 public void testDonkey() {7 DonkeyMock donkey = new DonkeyMock();8 donkey.setCustomName("Test donkey");9 assertEquals("Test donkey", donkey.getCustomName());10 }11}

Full Screen

Full Screen

DonkeyMock

Using AI Code Generation

copy

Full Screen

1package com.tutorialspoint;2import org.bukkit.entity.Donkey;3import org.bukkit.entity.EntityType;4import org.bukkit.entity.Horse;5import org.bukkit.entity.Horse.Color;6import org.bukkit.entity.Horse.Style;7import org.bukkit.entity.Horse.Variant;8import org.bukkit.entity.Player;9import org.junit.Test;10import be.seeseemelk.mockbukkit.MockBukkit;11import be.seeseemelk.mockbukkit.entity.DonkeyMock;12import be.seeseemelk.mockbukkit.entity.HorseMock;13import be.seeseemelk.mockbukkit.entity.PlayerMock;14import be.seeseemelk.mockbukkit.entity.RabbitMock;15public class MockBukkitTest {16 public void test() {17 MockBukkit.mock();18 PlayerMock player = MockBukkit.createMockPlayer("TestPlayer");19 Horse horse = new HorseMock(player, 1);20 horse.setColor(Color.BROWN);21 horse.setStyle(Style.BLACK_DOTS);22 horse.setVariant(Variant.HORSE);23 horse.setOwner(player);24 horse.setPassenger(player);25 horse.setJumpStrength(1.0);26 horse.setAdult();27 horse.setAgeLock(true);28 horse.setBreed(true);29 horse.setCarryingChest(true);30 horse.setCustomName("TestHorse");31 horse.setDomestication(1);32 horse.setFireTicks(1);33 horse.setGlowing(true);34 horse.setHealth(1);35 horse.setInvulnerable(true);36 horse.setMaxHealth(1);37 horse.setRemoveWhenFarAway(true);38 horse.setSilent(true);39 horse.setTamed(true);40 horse.setTicksLived(1);41 horse.setVelocity(player.getVelocity());42 horse.setAge(1);43 horse.setAgeLock(true);44 horse.setBreed(true);45 horse.setCarryingChest(true);46 horse.setCustomName("TestHorse");47 horse.setDomestication(1);48 horse.setFireTicks(1);49 horse.setGlowing(true);50 horse.setHealth(1);51 horse.setInvulnerable(true);52 horse.setMaxHealth(1);53 horse.setRemoveWhenFarAway(true);54 horse.setSilent(true);55 horse.setTamed(true);56 horse.setTicksLived(1);57 horse.setVelocity(player.getVelocity());58 horse.setAge(1);

Full Screen

Full Screen

DonkeyMock

Using AI Code Generation

copy

Full Screen

1package com.example;2import org.bukkit.entity.Donkey;3import org.bukkit.entity.Player;4import org.junit.jupiter.api.Test;5import be.seeseemelk.mockbukkit.MockBukkit;6import be.seeseemelk.mockbukkit.ServerMock;7import be.seeseemelk.mockbukkit.entity.DonkeyMock;8{9 public void testDonkeyMock()10 {11 ServerMock server = MockBukkit.mock();12 Player player = server.addPlayer();13 Donkey donkey = new DonkeyMock(server);14 player.mount(donkey);15 player.unmount(donkey);16 MockBukkit.unmock();17 }18}19package com.example;20import org.bukkit.entity.Donkey;21import org.bukkit.entity.Player;22import org.junit.jupiter.api.Test;23import be.seeseemelk.mockbukkit.MockBukkit;24import be.seeseemelk.mockbukkit.ServerMock;25import be.seeseemelk.mockbukkit.entity.DonkeyMock;26{27 public void testDonkeyMock()28 {29 ServerMock server = MockBukkit.mock();30 Player player = server.addPlayer();31 Donkey donkey = new DonkeyMock(server);32 player.mount(donkey);33 player.unmount(donkey);34 MockBukkit.unmock();35 }36}37package com.example;38import org.bukkit.entity.Donkey;39import org.bukkit.entity.Player;40import org.junit.jupiter.api.Test;41import be.seeseemelk.mockbukkit.MockBukkit;42import be.seeseemelk.mock

Full Screen

Full Screen

DonkeyMock

Using AI Code Generation

copy

Full Screen

1package be.seeseemelk.mockbukkit.entity;2import org.junit.Before;3import org.junit.Test;4import static org.junit.Assert.*;5{6 private DonkeyMock donkey;7 public void setUp()8 {9 donkey = new DonkeyMock();10 }11 public void testSetSaddle()12 {13 donkey.setSaddle(true);14 assertTrue(donkey.hasSaddle());15 }16 public void testSetChest()17 {18 donkey.setChest(true);19 assertTrue(donkey.hasChest());20 }21 public void testSetCarryingChest()22 {23 donkey.setCarryingChest(true);24 assertTrue(donkey.isCarryingChest());25 }26 public void testSetCarryingChestAfterSetChest()27 {28 donkey.setChest(true);29 donkey.setCarryingChest(true);30 assertTrue(donkey.isCarryingChest());31 }32 public void testSetCarryingChestAfterSetSaddle()33 {34 donkey.setSaddle(true);35 donkey.setCarryingChest(true);36 assertTrue(donkey.isCarryingChest());37 }38 public void testSetCarryingChestAfterSetSaddleAndSetChest()39 {40 donkey.setSaddle(true);41 donkey.setChest(true);42 donkey.setCarryingChest(true);43 assertTrue(donkey.isCarryingChest());44 }45}

Full Screen

Full Screen

DonkeyMock

Using AI Code Generation

copy

Full Screen

1package com.example;2import static org.junit.Assert.*;3import org.bukkit.entity.Donkey;4import org.junit.Test;5import be.seeseemelk.mockbukkit.entity.DonkeyMock;6public class DonkeyMockTest {7 public void test() {8 DonkeyMock donkey = new DonkeyMock();9 assertEquals(donkey.getVariant(), Donkey.Variant.DONKEY);10 }11}

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run MockBukkit automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Most used methods in DonkeyMock

Test Your Web Or Mobile Apps On 3000+ Browsers

Signup for free

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful