getMockBuilder(\mattvb91\TronTrx\Wallet::class) ->disableOriginalConstructor() ->setMethodsExcept(['getAddressHex']) ->getMock(); $addressHex = $wallet->getAddressHex(hex2bin($publicHex)); $this->assertEquals($expectedAddressHex, $addressHex); } /** * @covers \mattvb91\TronTrx\Wallet::getBase58CheckAddress */ public function testGetBase58CheckAddress() { /** @var \mattvb91\TronTrx\Wallet $wallet */ $wallet = $this->getMockBuilder(\mattvb91\TronTrx\Wallet::class) ->disableOriginalConstructor() ->setMethodsExcept(['getBase58CheckAddress']) ->getMock(); $expectedOutput = 'TZAcZfMseztuzBRXniZH4uxBF6jXBD38N3'; $addressBase58 = $wallet->getBase58CheckAddress(hex2bin('41fe7323249972344af4dad2f4dab2fcdbf254120e')); $this->assertEquals($expectedOutput, $addressBase58); } /** * @covers \mattvb91\TronTrx\Wallet::generateAddress */ public function testAttemptLimitWillThrowException() { $this->expectException(TronErrorException::class); /** @var Wallet $wallet */ $wallet = $this->getMockBuilder(\mattvb91\TronTrx\Wallet::class) ->disableOriginalConstructor() ->setMethodsExcept(['generateAddress']) ->getMock(); $wallet->expects(self::exactly(5)) ->method('genKeyPair') ->willReturn(['private_key_hex' => 'bla', 'public_key' => 'bla']); $wallet->generateAddress(); } }