Skip to content

Commit

Permalink
fix CS & drop support for old pocketmine versions
Browse files Browse the repository at this point in the history
  • Loading branch information
ShockedPlot7560 committed Jun 5, 2024
1 parent 132d1c1 commit aeb375f
Show file tree
Hide file tree
Showing 9 changed files with 155 additions and 174 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ jobs:
image: [ubuntu-20.04]
suittest: ["normal", "with_plugin", "no_test"]
php: ["8.1", "8.2", "8.3"]
pmmp: ["5.8.2","5.9.0", "5.10.0"]
pmmp: ["5.15.0"]

steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ composer/install: dev/composer.phar
$(PHP) $(COMPOSER) install

unittests:
export PHP_VERSION=8.1 && export PMMP_TAG=5.10.0 && make suitetest
export PHP_VERSION=8.2 && export PMMP_TAG=5.15.0 && make suitetest

suitetest:
$(eval CONTAINER_PREFIX := unittests-suite)
Expand Down
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,6 @@
"require-dev": {
"friendsofphp/php-cs-fixer": "*",
"phpstan/phpstan": "^1.10",
"pocketmine/pocketmine-mp": "^5.8"
"pocketmine/pocketmine-mp": "^5.15"
}
}
295 changes: 145 additions & 150 deletions composer.lock

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/framework/assert/BaseAssert.php
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ protected function assertEquals(mixed $expected, mixed $actual, string $message
/**
* @phpstan-return PromiseInterface<null>
*/
protected function assertNotEquals(mixed $expected, mixed $actual, string $message = null) : PromiseInterface {
protected function assertNotEquals(mixed $expected, mixed $actual, ?string $message = null) : PromiseInterface {
Assert::notEq($actual, $expected, $message ?? "Expected $actual to not be equal to $expected");

return $this->assertSyncPromise();
Expand Down
6 changes: 2 additions & 4 deletions src/players/DefaultTestPlayerListener.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,13 @@

namespace ShockedPlot7560\PmmpUnit\players;

use pocketmine\network\mcpe\convert\TypeConverter;
use pocketmine\network\mcpe\NetworkSession;
use pocketmine\network\mcpe\protocol\ChangeDimensionPacket;
use pocketmine\network\mcpe\protocol\ClientboundPacket;
use pocketmine\network\mcpe\protocol\PlayerActionPacket;
use pocketmine\network\mcpe\protocol\PlayStatusPacket;
use pocketmine\network\mcpe\protocol\RespawnPacket;
use pocketmine\network\mcpe\protocol\serializer\PacketSerializer;
use pocketmine\network\mcpe\protocol\serializer\PacketSerializerContext;
use pocketmine\network\mcpe\protocol\SetLocalPlayerAsInitializedPacket;
use pocketmine\network\mcpe\protocol\types\BlockPosition;
use pocketmine\network\mcpe\protocol\types\PlayerAction;
Expand All @@ -39,7 +37,7 @@ public function onPlayerAdd(Player $player) : void {
$this->plugin->getPlugin()->getScheduler()->scheduleDelayedTask(new ClosureTask(static function () use ($session, $entity_runtime_id) : void {
if ($session->isConnected()) {
$packet = SetLocalPlayerAsInitializedPacket::create($entity_runtime_id);
$serializer = PacketSerializer::encoder(new PacketSerializerContext(TypeConverter::getInstance()->getItemTypeDictionary()));
$serializer = PacketSerializer::encoder();
$packet->encode($serializer);
$session->handleDataPacket($packet, $serializer->getBuffer());
}
Expand Down Expand Up @@ -75,7 +73,7 @@ public function onPlayerAdd(Player $player) : void {
0
);

$serializer = PacketSerializer::encoder(new PacketSerializerContext(TypeConverter::getInstance()->getItemTypeDictionary()));
$serializer = PacketSerializer::encoder();
$packet->encode($serializer);
$session->handleDataPacket($packet, $serializer->getBuffer());
}
Expand Down
3 changes: 1 addition & 2 deletions src/players/TestPacketSender.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@
namespace ShockedPlot7560\PmmpUnit\players;

use pocketmine\network\mcpe\PacketSender;

final class TestPacketSender implements PacketSender {
public function send(string $payload, bool $immediate) : void {
public function send(string $payload, bool $immediate, ?int $receiptId) : void {
}

public function close(string $reason = "unknown reason") : void {
Expand Down
10 changes: 2 additions & 8 deletions src/players/TestPlayerManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,11 @@
use pocketmine\event\Listener;
use pocketmine\event\player\PlayerQuitEvent;
use pocketmine\network\mcpe\compression\ZlibCompressor;
use pocketmine\network\mcpe\convert\TypeConverter;
use pocketmine\network\mcpe\NetworkSession;
use pocketmine\network\mcpe\protocol\PacketPool;
use pocketmine\network\mcpe\protocol\ProtocolInfo;
use pocketmine\network\mcpe\protocol\ResourcePackClientResponsePacket;
use pocketmine\network\mcpe\protocol\serializer\PacketSerializer;
use pocketmine\network\mcpe\protocol\serializer\PacketSerializerContext;
use pocketmine\network\mcpe\protocol\types\DeviceOS;
use pocketmine\network\mcpe\protocol\types\InputMode;
use pocketmine\network\mcpe\protocol\types\login\ClientData;
Expand Down Expand Up @@ -153,16 +151,12 @@ public function addPlayer(TestPlayerInfo $info) : Promise {
if ($rakLibInterface === null) {
throw new RuntimeException("RakLibInterface not found");
}
/** @var ReflectionClass<RakLibInterface> $reflection */
$reflection = new ReflectionClass($rakLibInterface);
$packetContect = $reflection->getProperty("packetSerializerContext");
$value = $packetContect->getValue($rakLibInterface);
$session = new TestPlayerNetworkSession(
$server,
$network->getSessionManager(),
PacketPool::getInstance(),
new TestPacketSender(),
new StandardPacketBroadcaster($server, $value),
new StandardPacketBroadcaster($server),
ZlibCompressor::getInstance(),
$server->getIp(),
$server->getPort(),
Expand All @@ -177,7 +171,7 @@ public function addPlayer(TestPlayerInfo $info) : Promise {
$rp->invoke($session);

$packet = ResourcePackClientResponsePacket::create(ResourcePackClientResponsePacket::STATUS_COMPLETED, []);
$serializer = PacketSerializer::encoder(new PacketSerializerContext(TypeConverter::getInstance()->getItemTypeDictionary()));
$serializer = PacketSerializer::encoder();
$packet->encode($serializer);
$session->handleDataPacket($packet, $serializer->getBuffer());

Expand Down
7 changes: 1 addition & 6 deletions src/players/network/TestPlayerNetworkSession.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
use pocketmine\player\Player;
use pocketmine\promise\PromiseResolver;
use pocketmine\Server;
use ReflectionClass;
use ReflectionMethod;
use ReflectionProperty;
use ShockedPlot7560\PmmpUnit\players\network\listener\TestPlayerPacketListener;
Expand Down Expand Up @@ -53,11 +52,7 @@ public function __construct(
break;
}
}
/** @var ReflectionClass<RakLibInterface> $reflection */
$reflection = new ReflectionClass($rakLibInterface);
$packetContect = $reflection->getProperty("packetSerializerContext");
$value = $packetContect->getValue($rakLibInterface);
parent::__construct($server, $manager, $packetPool, $value, $sender, $broadcaster, new StandardEntityEventBroadcaster($broadcaster, $typeConverter), $compressor, $typeConverter, $ip, $port);
parent::__construct($server, $manager, $packetPool, $sender, $broadcaster, new StandardEntityEventBroadcaster($broadcaster, $typeConverter), $compressor, $typeConverter, $ip, $port);
$this->playerAddResolver = $playerAddResolver;

// do not store the resolver eternally
Expand Down

0 comments on commit aeb375f

Please sign in to comment.