/** * @param string[] $hexPrivateKeys * @param string * @param bool $compressed True if the public key should be using compressed format * @return PrivateKeyList * @throws \BlockCypher\Exception\BlockCypherInvalidPrivateKeyException */ public static function fromHexPrivateKeyArray($hexPrivateKeys, $coinSymbol, $compressed = true) { ArgumentArrayValidator::validate($hexPrivateKeys, 'hexPrivateKeys'); CoinSymbolValidator::validate($coinSymbol, 'coinSymbol'); $privateKeyList = new self($coinSymbol); foreach ($hexPrivateKeys as $hexPrivateKey) { $privateKey = PrivateKeyManipulator::importPrivateKeyFromHex($hexPrivateKey, $compressed); // Add private key indexed by public key $privateKeyList->addPrivateKey($privateKey); } return $privateKeyList; }
/** * @dataProvider dataProvider * @param $address * @throws \BlockCypher\Exception\BlockCypherInvalidPrivateKeyException */ public function testLength($address) { $privateKeyList = $this->anEmptyPrivateKeyList(); $this->assertEquals(0, $privateKeyList->length()); $privateKey = PrivateKeyManipulator::importPrivateKeyFromHex($address['private'], $address['compressed']); $privateKeyList = $this->aPrivateKeyListWithOne($privateKey); $this->assertEquals(1, $privateKeyList->length()); }
protected function setUp() { $this->privateKey = PrivateKeyManipulator::importPrivateKeyFromHex(self::ADDRESS_PRIVATE_KEY, true); }