From 36cd3825584510cce8f5ab7ad036252b69753435 Mon Sep 17 00:00:00 2001 From: Wyatt Carlson <107430583+wyattroyc@users.noreply.github.com> Date: Wed, 29 Mar 2023 08:59:44 -0600 Subject: [PATCH] add digits to password (#2705) --- lib/faker/default/internet.rb | 4 ++++ test/faker/default/test_faker_internet.rb | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/faker/default/internet.rb b/lib/faker/default/internet.rb index 275a10708d..7d788c1f4f 100644 --- a/lib/faker/default/internet.rb +++ b/lib/faker/default/internet.rb @@ -174,6 +174,10 @@ def password(min_length: 8, max_length: 16, mix_case: true, special_characters: password << lower_chars[rand(lower_chars.count - 1)] character_bag += lower_chars + digits = ('1'..'9').to_a + password << digits[rand(digits.count - 1)] + character_bag += digits + if character_types.include?(:mix_case) upper_chars = ('A'..'Z').to_a password << upper_chars[rand(upper_chars.count - 1)] diff --git a/test/faker/default/test_faker_internet.rb b/test/faker/default/test_faker_internet.rb index 87509d0a20..f70b3e658a 100644 --- a/test/faker/default/test_faker_internet.rb +++ b/test/faker/default/test_faker_internet.rb @@ -117,7 +117,12 @@ def test_username_with_range_and_separators end def test_password - assert_match(/\w{3}/, @tester.password) + password = @tester.password + + assert_match(/\w{3}/, password) + assert_match(/\d/, password) + assert_match(/[a-z]/, password) + assert_match(/[A-Z]/, password) end def test_password_with_integer_arg