mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-09-04 17:06:16 +00:00
Convert ItemFactory to singleton
This commit is contained in:
@ -28,16 +28,12 @@ use pocketmine\block\BlockFactory;
|
||||
|
||||
class ItemFactoryTest extends TestCase{
|
||||
|
||||
public function setUp() : void{
|
||||
ItemFactory::init();
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests that blocks are considered to be valid registered items
|
||||
*/
|
||||
public function testItemBlockRegistered() : void{
|
||||
for($id = 0; $id < 256; ++$id){
|
||||
self::assertEquals(BlockFactory::getInstance()->isRegistered($id), ItemFactory::isRegistered($id));
|
||||
self::assertEquals(BlockFactory::getInstance()->isRegistered($id), ItemFactory::getInstance()->isRegistered($id));
|
||||
}
|
||||
}
|
||||
|
||||
@ -64,7 +60,7 @@ class ItemFactoryTest extends TestCase{
|
||||
* @param int $meta
|
||||
*/
|
||||
public function testFromStringSingle(string $string, int $id, int $meta) : void{
|
||||
$item = ItemFactory::fromString($string);
|
||||
$item = ItemFactory::getInstance()->fromString($string);
|
||||
|
||||
self::assertEquals($id, $item->getId());
|
||||
self::assertEquals($meta, $item->getMeta());
|
||||
@ -74,10 +70,10 @@ class ItemFactoryTest extends TestCase{
|
||||
* Test that durable items are correctly created by the item factory
|
||||
*/
|
||||
public function testGetDurableItem() : void{
|
||||
self::assertInstanceOf(Sword::class, $i1 = ItemFactory::get(ItemIds::WOODEN_SWORD));
|
||||
self::assertInstanceOf(Sword::class, $i1 = ItemFactory::getInstance()->get(ItemIds::WOODEN_SWORD));
|
||||
/** @var Sword $i1 */
|
||||
self::assertSame(0, $i1->getDamage());
|
||||
self::assertInstanceOf(Sword::class, $i2 = ItemFactory::get(ItemIds::WOODEN_SWORD, 1));
|
||||
self::assertInstanceOf(Sword::class, $i2 = ItemFactory::getInstance()->get(ItemIds::WOODEN_SWORD, 1));
|
||||
/** @var Sword $i2 */
|
||||
self::assertSame(1, $i2->getDamage());
|
||||
}
|
||||
|
@ -30,7 +30,6 @@ use pocketmine\item\enchantment\EnchantmentInstance;
|
||||
class ItemTest extends TestCase{
|
||||
|
||||
public static function setUpBeforeClass() : void{
|
||||
ItemFactory::init();
|
||||
Enchantment::init();
|
||||
}
|
||||
|
||||
@ -38,14 +37,14 @@ class ItemTest extends TestCase{
|
||||
private $item;
|
||||
|
||||
public function setUp() : void{
|
||||
$this->item = ItemFactory::get(ItemIds::DIAMOND_SWORD);
|
||||
$this->item = ItemFactory::getInstance()->get(ItemIds::DIAMOND_SWORD);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test for issue #1145 (items aren't considered equal after NBT serializing and deserializing
|
||||
*/
|
||||
public function testItemEquals() : void{
|
||||
$item = ItemFactory::get(ItemIds::STONE)->setCustomName("HI");
|
||||
$item = ItemFactory::getInstance()->get(ItemIds::STONE)->setCustomName("HI");
|
||||
$item2 = Item::nbtDeserialize($item->nbtSerialize());
|
||||
self::assertTrue($item2->equals($item));
|
||||
self::assertTrue($item->equals($item2));
|
||||
@ -55,7 +54,7 @@ class ItemTest extends TestCase{
|
||||
* Test that same items without NBT are considered equal
|
||||
*/
|
||||
public function testItemEqualsNoNbt() : void{
|
||||
$item1 = ItemFactory::get(ItemIds::DIAMOND_SWORD);
|
||||
$item1 = ItemFactory::getInstance()->get(ItemIds::DIAMOND_SWORD);
|
||||
$item2 = clone $item1;
|
||||
self::assertTrue($item1->equals($item2));
|
||||
}
|
||||
@ -67,7 +66,7 @@ class ItemTest extends TestCase{
|
||||
public function testItemPersistsDisplayProperties() : void{
|
||||
$lore = ["Line A", "Line B"];
|
||||
$name = "HI";
|
||||
$item = ItemFactory::get(ItemIds::DIAMOND_SWORD);
|
||||
$item = ItemFactory::getInstance()->get(ItemIds::DIAMOND_SWORD);
|
||||
$item->setCustomName($name);
|
||||
$item->setLore($lore);
|
||||
$item = Item::nbtDeserialize($item->nbtSerialize());
|
||||
|
Reference in New Issue
Block a user