ffaker 2.22.0 → 2.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Changelog.md +129 -17
- data/Gemfile +15 -0
- data/README.md +3 -2
- data/REFERENCE.md +893 -866
- data/Rakefile +7 -7
- data/ffaker.gemspec +2 -6
- data/lib/ffaker/address.rb +4 -4
- data/lib/ffaker/address_fr.rb +3 -5
- data/lib/ffaker/address_it.rb +1 -4
- data/lib/ffaker/avatar.rb +11 -3
- data/lib/ffaker/bank.rb +1 -1
- data/lib/ffaker/bank_us.rb +37 -0
- data/lib/ffaker/book.rb +10 -2
- data/lib/ffaker/cheesy_lingo.rb +2 -2
- data/lib/ffaker/code.rb +1 -1
- data/lib/ffaker/company.rb +1 -1
- data/lib/ffaker/company_fr.rb +1 -1
- data/lib/ffaker/crypto.rb +14 -0
- data/lib/ffaker/date.rb +9 -0
- data/lib/ffaker/filesystem.rb +12 -2
- data/lib/ffaker/guid.rb +7 -1
- data/lib/ffaker/identification_br.rb +2 -11
- data/lib/ffaker/identification_ec.rb +1 -1
- data/lib/ffaker/identification_es_cl.rb +1 -1
- data/lib/ffaker/identification_kr.rb +10 -3
- data/lib/ffaker/identification_pl.rb +2 -2
- data/lib/ffaker/image.rb +28 -4
- data/lib/ffaker/lorem_ja.rb +1 -1
- data/lib/ffaker/lorem_ru.rb +1 -1
- data/lib/ffaker/movie.rb +1 -1
- data/lib/ffaker/name_fr.rb +4 -3
- data/lib/ffaker/name_pl.rb +2 -2
- data/lib/ffaker/number.rb +4 -0
- data/lib/ffaker/phone_number_de.rb +3 -3
- data/lib/ffaker/skill.rb +1 -1
- data/lib/ffaker/ssn.rb +4 -2
- data/lib/ffaker/string.rb +1 -1
- data/lib/ffaker/utils/module_utils.rb +8 -17
- data/lib/ffaker/utils/unique_utils.rb +9 -5
- data/lib/ffaker/uuid.rb +175 -0
- data/lib/ffaker/version.rb +1 -1
- data/lib/ffaker.rb +61 -191
- data/scripts/reference.rb +8 -10
- data/test/helper.rb +5 -5
- data/test/test_avatar.rb +30 -7
- data/test/test_bank_us.rb +37 -0
- data/test/test_book.rb +29 -0
- data/test/test_crypto.rb +15 -0
- data/test/test_date.rb +11 -1
- data/test/test_filesystem.rb +28 -2
- data/test/test_guid.rb +1 -1
- data/test/test_healthcare_ru.rb +1 -1
- data/test/test_identification.rb +12 -2
- data/test/test_identification_ec.rb +1 -1
- data/test/test_identification_es_mx.rb +3 -1
- data/test/test_identification_it.rb +12 -1
- data/test/test_identification_kr.rb +3 -3
- data/test/test_image.rb +51 -5
- data/test/test_internet.rb +3 -1
- data/test/test_internet_se.rb +3 -1
- data/test/test_lorem_br.rb +1 -1
- data/test/test_lorem_ru.rb +1 -1
- data/test/test_lorem_ua.rb +1 -1
- data/test/test_module_utils.rb +9 -0
- data/test/test_name_ua.rb +1 -1
- data/test/test_number.rb +13 -1
- data/test/test_phone_number_nl.rb +1 -1
- data/test/test_unique_utils.rb +4 -0
- data/test/test_units.rb +6 -6
- data/test/test_units_english.rb +15 -15
- data/test/test_units_metric.rb +15 -15
- data/test/test_uuid.rb +73 -0
- metadata +13 -49
data/test/test_uuid.rb
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'helper'
|
4
|
+
|
5
|
+
class TestUUID < Test::Unit::TestCase
|
6
|
+
include DeterministicHelper
|
7
|
+
|
8
|
+
assert_methods_are_deterministic(
|
9
|
+
FFaker::UUID,
|
10
|
+
:uuidv4, :uuidv6, :uuidv7, :uuidv8
|
11
|
+
)
|
12
|
+
|
13
|
+
def setup
|
14
|
+
@tester = FFaker::UUID
|
15
|
+
end
|
16
|
+
|
17
|
+
# @see https://stackoverflow.com/a/38191104
|
18
|
+
def test_uuidv4
|
19
|
+
raw_uuid = @tester.uuidv4
|
20
|
+
assert_format(raw_uuid)
|
21
|
+
|
22
|
+
uuid = uuid_to_integer(raw_uuid)
|
23
|
+
assert_version(uuid, 0b0100)
|
24
|
+
assert_variant(uuid, 0b10)
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_uuidv6
|
28
|
+
raw_uuid = @tester.uuidv6
|
29
|
+
assert_format(raw_uuid)
|
30
|
+
|
31
|
+
uuid = uuid_to_integer(raw_uuid)
|
32
|
+
assert_version(uuid, 0b0110)
|
33
|
+
assert_variant(uuid, 0b10)
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_uuidv7
|
37
|
+
raw_uuid = @tester.uuidv7
|
38
|
+
assert_format(raw_uuid)
|
39
|
+
|
40
|
+
uuid = uuid_to_integer(raw_uuid)
|
41
|
+
assert_version(uuid, 0b0111)
|
42
|
+
assert_variant(uuid, 0b10)
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_uuidv8
|
46
|
+
raw_uuid = @tester.uuidv8
|
47
|
+
assert_format(raw_uuid)
|
48
|
+
|
49
|
+
uuid = uuid_to_integer(raw_uuid)
|
50
|
+
assert_version(uuid, 0b1000)
|
51
|
+
assert_variant(uuid, 0b10)
|
52
|
+
end
|
53
|
+
|
54
|
+
private
|
55
|
+
|
56
|
+
# Matches structure of all UUID versions.
|
57
|
+
def assert_format(uuid)
|
58
|
+
assert_match(/\A[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[89ab][0-9a-f]{3}-[0-9a-f]{12}\z/,
|
59
|
+
uuid)
|
60
|
+
end
|
61
|
+
|
62
|
+
def assert_version(uuid, version)
|
63
|
+
assert_equal(version, (uuid >> 76) & 0b1111)
|
64
|
+
end
|
65
|
+
|
66
|
+
def assert_variant(uuid, variant)
|
67
|
+
assert_equal(variant, (uuid >> 62) & 0b11)
|
68
|
+
end
|
69
|
+
|
70
|
+
def uuid_to_integer(uuid)
|
71
|
+
uuid.delete('-').to_i(16)
|
72
|
+
end
|
73
|
+
end
|
metadata
CHANGED
@@ -1,58 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ffaker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.24.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- https://github.com/ffaker/ffaker/graphs/contributors
|
8
8
|
- Emmanuel Oga
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
13
|
-
dependencies:
|
14
|
-
- !ruby/object:Gem::Dependency
|
15
|
-
name: rake
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
requirements:
|
18
|
-
- - "~>"
|
19
|
-
- !ruby/object:Gem::Version
|
20
|
-
version: '13.0'
|
21
|
-
type: :development
|
22
|
-
prerelease: false
|
23
|
-
version_requirements: !ruby/object:Gem::Requirement
|
24
|
-
requirements:
|
25
|
-
- - "~>"
|
26
|
-
- !ruby/object:Gem::Version
|
27
|
-
version: '13.0'
|
28
|
-
- !ruby/object:Gem::Dependency
|
29
|
-
name: rubocop
|
30
|
-
requirement: !ruby/object:Gem::Requirement
|
31
|
-
requirements:
|
32
|
-
- - ">="
|
33
|
-
- !ruby/object:Gem::Version
|
34
|
-
version: '0'
|
35
|
-
type: :development
|
36
|
-
prerelease: false
|
37
|
-
version_requirements: !ruby/object:Gem::Requirement
|
38
|
-
requirements:
|
39
|
-
- - ">="
|
40
|
-
- !ruby/object:Gem::Version
|
41
|
-
version: '0'
|
42
|
-
- !ruby/object:Gem::Dependency
|
43
|
-
name: test-unit
|
44
|
-
requirement: !ruby/object:Gem::Requirement
|
45
|
-
requirements:
|
46
|
-
- - ">="
|
47
|
-
- !ruby/object:Gem::Version
|
48
|
-
version: '0'
|
49
|
-
type: :development
|
50
|
-
prerelease: false
|
51
|
-
version_requirements: !ruby/object:Gem::Requirement
|
52
|
-
requirements:
|
53
|
-
- - ">="
|
54
|
-
- !ruby/object:Gem::Version
|
55
|
-
version: '0'
|
12
|
+
date: 2025-02-02 00:00:00.000000000 Z
|
13
|
+
dependencies: []
|
56
14
|
description: Ffaker generates dummy data.
|
57
15
|
email: EmmanuelOga@gmail.com
|
58
16
|
executables: []
|
@@ -110,6 +68,7 @@ files:
|
|
110
68
|
- lib/ffaker/aws.rb
|
111
69
|
- lib/ffaker/bacon_ipsum.rb
|
112
70
|
- lib/ffaker/bank.rb
|
71
|
+
- lib/ffaker/bank_us.rb
|
113
72
|
- lib/ffaker/book.rb
|
114
73
|
- lib/ffaker/boolean.rb
|
115
74
|
- lib/ffaker/cheesy_lingo.rb
|
@@ -125,6 +84,7 @@ files:
|
|
125
84
|
- lib/ffaker/company_se.rb
|
126
85
|
- lib/ffaker/conference.rb
|
127
86
|
- lib/ffaker/courses_fr.rb
|
87
|
+
- lib/ffaker/crypto.rb
|
128
88
|
- lib/ffaker/currency.rb
|
129
89
|
- lib/ffaker/data/address/city_suffixes
|
130
90
|
- lib/ffaker/data/address/country
|
@@ -627,6 +587,7 @@ files:
|
|
627
587
|
- lib/ffaker/utils/module_utils.rb
|
628
588
|
- lib/ffaker/utils/random_utils.rb
|
629
589
|
- lib/ffaker/utils/unique_utils.rb
|
590
|
+
- lib/ffaker/uuid.rb
|
630
591
|
- lib/ffaker/vehicle.rb
|
631
592
|
- lib/ffaker/venue.rb
|
632
593
|
- lib/ffaker/version.rb
|
@@ -675,6 +636,7 @@ files:
|
|
675
636
|
- test/test_aws.rb
|
676
637
|
- test/test_bacon_ipsum.rb
|
677
638
|
- test/test_bank.rb
|
639
|
+
- test/test_bank_us.rb
|
678
640
|
- test/test_book.rb
|
679
641
|
- test/test_boolean.rb
|
680
642
|
- test/test_cheesy_lingo.rb
|
@@ -691,6 +653,7 @@ files:
|
|
691
653
|
- test/test_conference.rb
|
692
654
|
- test/test_course_mathematiques.rb
|
693
655
|
- test/test_course_philosophie.rb
|
656
|
+
- test/test_crypto.rb
|
694
657
|
- test/test_currency.rb
|
695
658
|
- test/test_date.rb
|
696
659
|
- test/test_dizzle_ipsum.rb
|
@@ -826,6 +789,7 @@ files:
|
|
826
789
|
- test/test_units.rb
|
827
790
|
- test/test_units_english.rb
|
828
791
|
- test/test_units_metric.rb
|
792
|
+
- test/test_uuid.rb
|
829
793
|
- test/test_vehicle.rb
|
830
794
|
- test/test_venue.rb
|
831
795
|
- test/test_youtube.rb
|
@@ -836,7 +800,7 @@ metadata:
|
|
836
800
|
changelog_uri: https://github.com/ffaker/ffaker/blob/main/Changelog.md
|
837
801
|
documentation_uri: https://github.com/ffaker/ffaker/blob/main/REFERENCE.md
|
838
802
|
rubygems_mfa_required: 'true'
|
839
|
-
post_install_message:
|
803
|
+
post_install_message:
|
840
804
|
rdoc_options:
|
841
805
|
- "--charset=UTF-8"
|
842
806
|
require_paths:
|
@@ -852,8 +816,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
852
816
|
- !ruby/object:Gem::Version
|
853
817
|
version: '0'
|
854
818
|
requirements: []
|
855
|
-
rubygems_version: 3.4.
|
856
|
-
signing_key:
|
819
|
+
rubygems_version: 3.4.19
|
820
|
+
signing_key:
|
857
821
|
specification_version: 4
|
858
822
|
summary: Ffaker generates dummy data.
|
859
823
|
test_files: []
|