/** * @covers ::pad */ public function testPaddedValue() { $testData = ['1010' => [0 => '1010', 3 => '1010', 8 => '00001010'], '12345678' => [0 => '12345678', 3 => '12345678', 8 => '12345678'], '001122' => [0 => '1122', 3 => '1122', 8 => '00001122'], '0000' => [0 => '0', 3 => '000', 8 => '00000000']]; $message = 'Input %s padded left to %d length should output %s.'; foreach ($testData as $input => $tests) { foreach ($tests as $length => $expected) { $result = DataConverter::pad($input, $length); $this->assertEquals($expected, $result, sprintf($message, $input, $length, $expected)); } } }
/** * Helper method converting input data from binary string. * * @param string $binary * @param string $type * @param string $pad * * @return string */ private function _convertFromBin($binary, $base, $pad) { switch ($base) { case 2: return DataConverter::pad($binary, $pad ? $this->binSize : 0); case 10: return DataConverter::binToDec($binary, $pad ? $this->decSize : 0); case 16: return DataConverter::binToHex($binary, $pad ? $this->hexSize : 0); } }