public function testOne() { $output = RandomGenerator::generateOne(); $this->assertRegExp('/^([a-zA-Z0-9]{10})$/', $output, 'First match did not happen'); $output = RandomGenerator::generateOne(7, RandomGenerator::TYPE_ALPHA, 'blaXbla'); $this->assertRegExp('/^bla([a-zA-Z]{7})bla$/', $output, 'Second match did not happen'); $output = RandomGenerator::generateOne(6, RandomGenerator::TYPE_NUM, 'prefix-X-suffix', 2, '-'); $this->assertRegExp('/^prefix-([0-9-]{8})-suffix$/', $output, 'Separator match did not happen'); $output = RandomGenerator::generateOne(1200, RandomGenerator::TYPE_NUM); $this->assertEquals(1200, strlen($output), 'Long string generated correctly'); }
/** * Uses the RandomGenerator engine to set the $this->code property * * @param int $length * @param string $type * @param string $pattern * @param int $separateEvery * @param string $separator * @return mixed */ public function generateCode($length = 10, $type = RandomGenerator::TYPE_ALPHANUM, $pattern = 'X', $separateEvery = 0, $separator = '-') { //save random generation data in memory $this->setMeta('random', array('length' => $length, 'type' => $type, 'pattern' => $pattern, 'separateEvery' => $separateEvery, 'separator' => $separator)); return $this->code = RandomGenerator::generateOne($length, $type, $pattern, $separateEvery, $separator); }