Best MockBukkit code snippet using be.seeseemelk.mockbukkit.entity.CreeperMock
Source:WorldMockTest.java  
...12import be.seeseemelk.mockbukkit.entity.CaveSpiderMock;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);905		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.MULE);906		assertInstanceOf(MuleMock.class, entity);907		assertTrue(entity.isValid());908	}909	@Test910	void testSpawnSkeletonHorse()911	{912		WorldMock world = new WorldMock(Material.DIRT, 3);913		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.SKELETON_HORSE);914		assertInstanceOf(SkeletonHorseMock.class, entity);915		assertTrue(entity.isValid());916	}917	@Test918	void testSpawnZombieHorse()919	{920		WorldMock world = new WorldMock(Material.DIRT, 3);921		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.ZOMBIE_HORSE);922		assertInstanceOf(ZombieHorseMock.class, entity);923		assertTrue(entity.isValid());924	}925	@Test926	void testSpawnCow()927	{928		WorldMock world = new WorldMock(Material.DIRT, 3);929		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.COW);930		assertInstanceOf(CowMock.class, entity);931		assertTrue(entity.isValid());932	}933	@Test934	void testSpawnSkeleton()935	{936		WorldMock world = new WorldMock(Material.DIRT, 3);937		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.SKELETON);938		assertInstanceOf(SkeletonMock.class, entity);939		assertTrue(entity.isValid());940	}941	@Test942	void testSpawnChicken()943	{944		WorldMock world = new WorldMock(Material.DIRT, 3);945		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.CHICKEN);946		assertInstanceOf(ChickenMock.class, entity);947		assertTrue(entity.isValid());948	}949	@Test950	void testSpawnBlaze()951	{952		WorldMock world = new WorldMock(Material.DIRT, 3);953		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.BLAZE);954		assertInstanceOf(BlazeMock.class, entity);955		assertTrue(entity.isValid());956	}957	@Test958	void testSpawnStray()959	{960		WorldMock world = new WorldMock(Material.DIRT, 3);961		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.STRAY);962		assertInstanceOf(StrayMock.class, entity);963		assertTrue(entity.isValid());964	}965	@Test966	void testSpawnSpider()967	{968		WorldMock world = new WorldMock(Material.DIRT, 3);969		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.SPIDER);970		assertInstanceOf(SpiderMock.class, entity);971		assertTrue(entity.isValid());972	}973	@Test974	void testSpawnWitherSkeleton()975	{976		WorldMock world = new WorldMock(Material.DIRT, 3);977		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.WITHER_SKELETON);978		assertInstanceOf(WitherSkeletonMock.class, entity);979		assertTrue(entity.isValid());980	}981	@Test982	void testSpawnCaveSpider()983	{984		WorldMock world = new WorldMock(Material.DIRT, 3);985		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.CAVE_SPIDER);986		assertInstanceOf(CaveSpiderMock.class, entity);987		assertTrue(entity.isValid());988	}989	@Test990	void testSpawnGiant()991	{992		WorldMock world = new WorldMock(Material.DIRT, 3);993		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.GIANT);994		assertInstanceOf(GiantMock.class, entity);995		assertTrue(entity.isValid());996	}997	@Test998	void testSpawnAxolotl()999	{1000		WorldMock world = new WorldMock(Material.DIRT, 3);1001		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.AXOLOTL);1002		assertInstanceOf(AxolotlMock.class, entity);1003		assertTrue(entity.isValid());1004	}1005	@Test1006	void testSpawnBat()1007	{1008		WorldMock world = new WorldMock(Material.DIRT, 3);1009		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.BAT);1010		assertInstanceOf(BatMock.class, entity);1011		assertTrue(entity.isValid());1012	}1013	@Test1014	void testSpawnCat()1015	{1016		WorldMock world = new WorldMock(Material.DIRT, 3);1017		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.CAT);1018		assertInstanceOf(CatMock.class, entity);1019		assertTrue(entity.isValid());1020	}1021	@Test1022	void testSpawnFrog()1023	{1024		WorldMock world = new WorldMock(Material.DIRT, 3);1025		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.FROG);1026		assertInstanceOf(FrogMock.class, entity);1027		assertTrue(entity.isValid());1028	}1029	@Test1030	void testSpawnFox()1031	{1032		WorldMock world = new WorldMock(Material.DIRT, 3);1033		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.FOX);1034		assertInstanceOf(FoxMock.class, entity);1035		assertTrue(entity.isValid());1036	}1037	@Test1038	void testSpawnGhast()1039	{1040		WorldMock world = new WorldMock(Material.DIRT, 3);1041		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.GHAST);1042		assertInstanceOf(GhastMock.class, entity);1043		assertTrue(entity.isValid());1044	}1045	@Test1046	void testSpawnMushroomCow()1047	{1048		WorldMock world = new WorldMock(Material.DIRT, 3);1049		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.MUSHROOM_COW);1050		assertInstanceOf(MushroomCowMock.class, entity);1051		assertTrue(entity.isValid());1052	}1053	@Test1054	void testSpawnTadPole()1055	{1056		WorldMock world = new WorldMock(Material.DIRT, 3);1057		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.TADPOLE);1058		assertInstanceOf(TadpoleMock.class, entity);1059		assertTrue(entity.isValid());1060	}1061	@Test1062	void testSpawnCod()1063	{1064		WorldMock world = new WorldMock(Material.DIRT, 3);1065		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.COD);1066		assertInstanceOf(CodMock.class, entity);1067		assertTrue(entity.isValid());1068	}1069	@Test1070	void testSpawnSalmon()1071	{1072		WorldMock world = new WorldMock(Material.DIRT, 3);1073		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.SALMON);1074		assertInstanceOf(SalmonMock.class, entity);1075		assertTrue(entity.isValid());1076	}1077	@Test1078	void testSpawnTropicalFish()1079	{1080		WorldMock world = new WorldMock(Material.DIRT, 3);1081		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.TROPICAL_FISH);1082		assertInstanceOf(TropicalFishMock.class, entity);1083		assertTrue(entity.isValid());1084	}1085	@Test1086	void testSpawnPufferfish()1087	{1088		WorldMock world = new WorldMock(Material.DIRT, 3);1089		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.PUFFERFISH);1090		assertInstanceOf(PufferFishMock.class, entity);1091		assertTrue(entity.isValid());1092	}1093	@Test1094	void testSpawnBee()1095	{1096		WorldMock world = new WorldMock(Material.DIRT, 3);1097		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.BEE);1098		assertInstanceOf(BeeMock.class, entity);1099		assertTrue(entity.isValid());1100	}1101	@Test1102	void testSpawnGoat()1103	{1104		WorldMock world = new WorldMock(Material.DIRT, 3);1105		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.GOAT);1106		assertInstanceOf(GoatMock.class, entity);1107		assertTrue(entity.isValid());1108	}1109	@Test1110	void testSpawnCreeper()1111	{1112		WorldMock world = new WorldMock(Material.DIRT, 3);1113		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.CREEPER);1114		assertInstanceOf(CreeperMock.class, entity);1115		assertTrue(entity.isValid());1116	}1117	@Test1118	void testSpawnWolf()1119	{1120		WorldMock world = new WorldMock(Material.DIRT, 3);1121		Entity entity = world.spawnEntity(new Location(world, 0, 0, 0), EntityType.WOLF);1122		assertInstanceOf(WolfMock.class, entity);1123		assertTrue(entity.isValid());1124	}1125	@Test1126	void testSpawnEgg()1127	{1128		WorldMock world = new WorldMock(Material.DIRT, 3);...Source:CreeperMockTest.java  
...15import static org.junit.jupiter.api.Assertions.assertEquals;16import static org.junit.jupiter.api.Assertions.assertFalse;17import static org.junit.jupiter.api.Assertions.assertThrows;18import static org.junit.jupiter.api.Assertions.assertTrue;19class CreeperMockTest20{21	private CreeperMock creeper;22	private ServerMock server;23	@BeforeEach24	void setUp()25	{26		server = MockBukkit.mock();27		creeper = new CreeperMock(server, UUID.randomUUID());28	}29	@AfterEach30	void tearDown()31	{32		MockBukkit.unmock();33	}34	@Test35	void testGetType()36	{37		assertEquals(EntityType.CREEPER, creeper.getType());38	}39	@Test40	void testIsPoweredDefault()41	{...Source:CreeperMock.java  
...7import org.bukkit.event.entity.CreeperPowerEvent;8import org.bukkit.event.entity.ExplosionPrimeEvent;9import org.jetbrains.annotations.NotNull;10import java.util.UUID;11public class CreeperMock extends MonsterMock implements Creeper12{13	private boolean powered = false;14	private int maxFuseTicks = 30;15	private int fuseTicks = 0;16	private int explosionRadius = 3;17	private boolean ignited = false;18	public CreeperMock(@NotNull ServerMock server, @NotNull UUID uuid)19	{20		super(server, uuid);21	}22	@Override23	public boolean isPowered()24	{25		return this.powered;26	}27	@Override28	public void setPowered(boolean value)29	{30		CreeperPowerEvent.PowerCause cause = powered ? CreeperPowerEvent.PowerCause.SET_ON : CreeperPowerEvent.PowerCause.SET_OFF;31		if (new CreeperPowerEvent(this, cause).callEvent())32		{...CreeperMock
Using AI Code Generation
1import be.seeseemelk.mockbukkit.entity.CreeperMock;2import be.seeseemelk.mockbukkit.entity.CreeperMock;3import be.seeseemelk.mockbukkit.entity.CreeperMock;4import be.seeseemelk.mockbukkit.entity.CreeperMock;5import be.seeseemelk.mockbukkit.entity.CreeperMock;6import be.seeseemelk.mockbukkit.entity.CreeperMock;7import be.seeseemelk.mockbukkit.entity.CreeperMock;8import be.seeseemelk.mockbukkit.entity.CreeperMock;9import be.seeseemelk.mockbukkit.entity.CreeperMock;10import be.seeseemelk.mockbukkit.entity.CreeperMock;11import be.seeseemelk.mockbukkit.entity.CreeperMock;12import be.seeseemelk.mockbukkit.entity.CreeperMock;CreeperMock
Using AI Code Generation
1package be.seeseemelk.mockbukkit.entity;2import org.bukkit.entity.Creeper;3import org.bukkit.entity.EntityType;4import org.bukkit.entity.LivingEntity;5import org.bukkit.event.entity.CreeperPowerEvent;6import org.bukkit.event.entity.CreeperPowerEvent.PowerCause;7{8    private boolean powered;9    private boolean ignited;10    public CreeperMock()11    {12        super(EntityType.CREEPER);13    }14    public boolean isPowered()15    {16        return powered;17    }18    public void setPowered(boolean value)19    {20        if (powered != value)21        {22            CreeperPowerEvent event = new CreeperPowerEvent((Creeper) this, value ? PowerCause.LIGHTNING : PowerCause.SET_ON, value);23            server.getPluginManager().callEvent(event);24            if (!event.isCancelled())25            {26                powered = value;27            }28        }29    }30    public boolean isIgnited()31    {32        return ignited;33    }34    public void setIgnited(boolean value)35    {36        ignited = value;37    }38    public int getMaxFuseTicks()39    {40        return 30;41    }42    public void setMaxFuseTicks(int ticks)43    {44        throw new UnsupportedOperationException();45    }46    public int getFuseTicks()47    {48        return 0;49    }50    public void setFuseTicks(int ticks)51    {52        throw new UnsupportedOperationException();53    }54    public void explode()55    {56        explode(3.0f);57    }58    public void explode(float yield)59    {60        server.getWorlds().get(0).createExplosion(getLocation(), yield);61    }62    public LivingEntity getSource()63    {64        return null;65    }66    public void setSource(LivingEntity source)67    {68        throw new UnsupportedOperationException();69    }70}71package be.seeseemelk.mockbukkit.entity;72import org.bukkit.entity.EntityType;73import org.bukkit.entity.LivingEntity;74import org.bukkit.event.entity.CreeperPowerEvent;75import org.bukkit.event.entity.CCreeperMock
Using AI Code Generation
1import be.seeseemelk.mockbukkit.entity.CreeperMock;2import org.bukkit.entity.Creeper;3{4    public static void main(String[] args)5    {6        CreeperMock creeper = new CreeperMock();7        Creeper creeper = new CreeperMock();8    }9}10        Creeper creeper = new CreeperMock();CreeperMock
Using AI Code Generation
1import be.seeseemelk.mockbukkit.entity.CreeperMock;2import org.bukkit.Location;3import org.bukkit.entity.Creeper;4import org.bukkit.World;5{6    private Creeper creeper;7    private World world;8    private Location location;9    private int x;10    private int y;11    private int z;12    private float yaw;13    private float pitch;14    private int fuseTicks;15    private boolean ignited;16    public void setUp()17    {18        x = 0;19        y = 0;20        z = 0;21        yaw = 0;22        pitch = 0;23        fuseTicks = 0;24        ignited = false;25        location = new Location(world, x, y, z, yaw, pitch);26        creeper = new CreeperMock(location);27    }28    public void testCreeperMock()29    {30        setUp();31        assertEquals(creeper.getFuseTicks(), fuseTicks);32        assertEquals(creeper.isIgnited(), ignited);33    }34    public void testFuseTicks()35    {36        setUp();37        fuseTicks = 100;38        creeper.setFuseTicks(fuseTicks);39        assertEquals(creeper.getFuseTicks(), fuseTicks);40    }41    public void testIgnited()42    {43        setUp();44        ignited = true;45        creeper.setIgnited(ignited);46        assertEquals(creeper.isIgnited(), ignited);47    }48}CreeperMock
Using AI Code Generation
1package be.seeseemelk.mockbukkit.entity;2import java.util.HashSet;3import java.util.Set;4import java.util.UUID;5import java.util.concurrent.ThreadLocalRandom;6import org.bukkit.EntityEffect;7import org.bukkit.Location;8import org.bukkit.Material;9import org.bukkit.block.Block;10import org.bukkit.entity.Creeper;11import org.bukkit.entity.Entity;12import org.bukkit.entity.EntityType;13import org.bukkit.entity.LightningStrike;14import org.bukkit.entity.LivingEntity;15import org.bukkit.entity.TNTPrimed;16import org.bukkit.event.entity.CreeperPowerEvent;17import org.bukkit.event.entity.CreeperPowerEvent.PowerCause;18import org.bukkit.event.entity.ExplosionPrimeEvent;19import org.bukkit.inventory.ItemStack;20import org.bukkit.metadata.FixedMetadataValue;21import org.bukkit.metadata.MetadataValue;22import org.bukkit.metadata.Metadatable;23import org.bukkit.plugin.Plugin;24import org.bukkit.util.Vector;25import org.jetbrains.annotations.NotNull;26import org.jetbrains.annotations.Nullable;27import be.seeseemelk.mockbukkit.MockBukkit;28import be.seeseemelk.mockbukkit.ServerMock;29import be.seeseemelk.mockbukkit.UnimplementedOperationException;30 * This is a mock implementation of a {@link Creeper}. It allows you to create31{32    private boolean ignited;33    private boolean powered;34    private int explosionRadius = 3;35    public CreeperMock(@NotNull ServerMock server, @NotNull UUID uuid)36    {37        super(server, uuid);38    }39    public CreeperMock(@NotNull ServerMock server)40    {41        super(server);42    }43    public EntityType getType()44    {45        return EntityType.CREEPER;46    }47    public boolean isPowered()48    {49        return powered;50    }51    public void setPowered(boolean value)52    {53        CreeperPowerEvent event = new CreeperPowerEvent(this, valueLearn 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.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
