diff --git a/readme.md b/readme.md index 84ff68e8..3049d32d 100644 --- a/readme.md +++ b/readme.md @@ -92,8 +92,8 @@ Each of the generator properties (like `name`, `address`, and `lorem`) are calle titleMale // 'Mr.' titleFemale // 'Ms.' suffix // 'Jr.' - name($gender = null|'male'|'female') // 'Dr. Zane Stroman' - firstName($gender = null|'male'|'female') // 'Maynard' + name($gender = null|'male'|'female') // 'Dr. Zane Stroman' + firstName($gender = null|'male'|'female') // 'Maynard' firstNameMale // 'Maynard' firstNameFemale // 'Rachel' lastName // 'Zulauf' @@ -168,6 +168,8 @@ Each of the generator properties (like `name`, `address`, and `lorem`) are calle url // 'http://www.strackeframi.com/' ipv4 // '109.133.32.252' ipv6 // '8e65:933d:22ee:a232:f1c1:2741:1f10:117c' + localIpv4 // '10.242.58.8' + macAddress // '43:85:B7:08:10:CA' ### `Faker\Provider\UserAgent` diff --git a/src/Faker/Factory.php b/src/Faker/Factory.php index 09e440c3..4d4f6a0a 100644 --- a/src/Faker/Factory.php +++ b/src/Faker/Factory.php @@ -6,7 +6,7 @@ class Factory { const DEFAULT_LOCALE = 'en_US'; - protected static $defaultProviders = array('Address', 'Barcode', 'Color', 'Company', 'DateTime', 'File', 'Image', 'Internet', 'Lorem', 'Miscellaneous', 'Payment', 'Person', 'PhoneNumber', 'Text', 'UserAgent', 'Uuid'); + protected static $defaultProviders = array('Address', 'Barcode', 'Color', 'Company', 'Computer', 'DateTime', 'File', 'Image', 'Internet', 'Lorem', 'Miscellaneous', 'Payment', 'Person', 'PhoneNumber', 'Text', 'UserAgent', 'Uuid'); public static function create($locale = self::DEFAULT_LOCALE) { diff --git a/src/Faker/Generator.php b/src/Faker/Generator.php index d9b58060..0ea94285 100644 --- a/src/Faker/Generator.php +++ b/src/Faker/Generator.php @@ -57,6 +57,8 @@ namespace Faker; * @property string $url * @property string $ipv4 * @property string $ipv6 + * @property string internalIpv4 + * @property string macAddress * * @property int $unixTime * @property \DateTime $dateTime diff --git a/src/Faker/Provider/Computer.php b/src/Faker/Provider/Computer.php new file mode 100644 index 00000000..923e32c5 --- /dev/null +++ b/src/Faker/Provider/Computer.php @@ -0,0 +1,46 @@ +assertRegExp('/^([0-9A-F]{2}[:]){5}([0-9A-F]{2})$/i', Computer::macAddress()); + } + + public function testLocalIp() + { + $range1 = '(10)(\.(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])|[1][0-9][0-9]|[1-9][0-9]|[0-9])){3}'; + $range2 = '(192)\.(168)(\.(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])|[1][0-9][0-9]|[1-9][0-9]|[0-9])){2}'; + + $this->assertRegExp('/^'.$range1.'|'.$range2.'$/', Computer::localIp()); + } +}