diff --git a/spec/number_spec.cr b/spec/number_spec.cr index f31a7bc..69c2fd3 100644 --- a/spec/number_spec.cr +++ b/spec/number_spec.cr @@ -59,4 +59,9 @@ describe Faker::Number do (random_number >= 1).should be_true (random_number <= 100).should be_true end + + it "hexadecimal" do + Faker::Number.hexadecimal(4).match(/[0-9a-f]{4}/).should_not eq nil + Faker::Number.hexadecimal(7).match(/[0-9a-f]{7}/).should_not eq nil + end end diff --git a/src/faker/number.cr b/src/faker/number.cr index 2b48111..542e504 100644 --- a/src/faker/number.cr +++ b/src/faker/number.cr @@ -28,6 +28,12 @@ module Faker less_than_zero(random_number) end + def self.hexadecimal(digits) + hex = "" + digits.times { hex += rand(15).to_s(16) } + hex + end + private def self.greater_than_zero(number) if number > 0 number