ffaker 2.1.0 → 2.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Changelog.md +32 -21
- data/README.md +16 -16
- data/REFERENCE.md +925 -646
- data/ffaker.gemspec +73 -5
- data/lib/ffaker.rb +1 -1
- data/lib/ffaker/address.rb +4 -0
- data/lib/ffaker/address_ch.rb +21 -0
- data/lib/ffaker/address_ch_de.rb +16 -0
- data/lib/ffaker/address_ch_fr.rb +16 -0
- data/lib/ffaker/address_ch_it.rb +16 -0
- data/lib/ffaker/address_da.rb +2 -4
- data/lib/ffaker/address_in.rb +56 -0
- data/lib/ffaker/address_ru.rb +39 -0
- data/lib/ffaker/address_ua.rb +58 -0
- data/lib/ffaker/avatar.rb +3 -5
- data/lib/ffaker/cheesy_lingo.rb +39 -0
- data/lib/ffaker/color_ua.rb +12 -0
- data/lib/ffaker/data/address/time_zone +128 -0
- data/lib/ffaker/data/address_ch/canton_abbr +26 -0
- data/lib/ffaker/data/address_chde/canton +26 -0
- data/lib/ffaker/data/address_chfr/canton +26 -0
- data/lib/ffaker/data/address_chit/canton +26 -0
- data/lib/ffaker/data/address_da/city +3 -3
- data/lib/ffaker/data/address_da/kommune +0 -4
- data/lib/ffaker/data/address_in/state +29 -0
- data/lib/ffaker/data/address_in/state_abbr +29 -0
- data/lib/ffaker/data/address_in/union_territory +7 -0
- data/lib/ffaker/data/address_in/union_territory_abbr +7 -0
- data/lib/ffaker/data/address_ru/city +74 -0
- data/lib/ffaker/data/address_ru/province +83 -0
- data/lib/ffaker/data/address_ru/street +49 -0
- data/lib/ffaker/data/address_ua/city +57 -0
- data/lib/ffaker/data/address_ua/country +193 -0
- data/lib/ffaker/data/address_ua/province +27 -0
- data/lib/ffaker/data/address_ua/street +13 -0
- data/lib/ffaker/data/cheesy_lingo/cheesy_phrases +54 -0
- data/lib/ffaker/data/cheesy_lingo/cheesy_words +34 -0
- data/lib/ffaker/data/color_ua/names_list +114 -0
- data/lib/ffaker/data/lorem_ua/capital_chars +33 -0
- data/lib/ffaker/data/lorem_ua/chars +33 -0
- data/lib/ffaker/data/lorem_ua/words +362 -0
- data/lib/ffaker/data/music/albums +91 -0
- data/lib/ffaker/data/music/artists +100 -0
- data/lib/ffaker/data/music/genres +20 -0
- data/lib/ffaker/data/music/songs +100 -0
- data/lib/ffaker/data/name_da/female_first_names +291 -480
- data/lib/ffaker/data/name_da/male_first_names +294 -383
- data/lib/ffaker/data/name_ua/first_names_female +193 -0
- data/lib/ffaker/data/name_ua/first_names_male +195 -0
- data/lib/ffaker/data/name_ua/last_names_female +230 -0
- data/lib/ffaker/data/name_ua/last_names_male +239 -0
- data/lib/ffaker/data/name_ua/middle_names_female +116 -0
- data/lib/ffaker/data/name_ua/middle_names_male +116 -0
- data/lib/ffaker/data/vehicle/displacements_list +21 -0
- data/lib/ffaker/data/vehicle/fuel_types_list +6 -0
- data/lib/ffaker/data/vehicle/transmissions_list +4 -0
- data/lib/ffaker/data/vehicle/upholstery_list +5 -0
- data/lib/ffaker/internet.rb +20 -20
- data/lib/ffaker/lorem_ua.rb +59 -0
- data/lib/ffaker/music.rb +24 -0
- data/lib/ffaker/name_da.rb +17 -28
- data/lib/ffaker/name_ja.rb +2 -4
- data/lib/ffaker/name_ua.rb +59 -0
- data/lib/ffaker/phone_number.rb +4 -1
- data/lib/ffaker/phone_number_br.rb +74 -0
- data/lib/ffaker/phone_number_ch.rb +46 -0
- data/lib/ffaker/phone_number_da.rb +3 -3
- data/lib/ffaker/string.rb +14 -6
- data/lib/ffaker/vehicle.rb +26 -0
- data/test/test_address.rb +4 -0
- data/test/test_address_ch.rb +13 -0
- data/test/test_address_ch_de.rb +9 -0
- data/test/test_address_ch_fr.rb +9 -0
- data/test/test_address_ch_it.rb +11 -0
- data/test/test_address_da.rb +10 -10
- data/test/test_address_in.rb +50 -0
- data/test/test_address_ru.rb +30 -0
- data/test/test_address_ua.rb +49 -0
- data/test/test_avatar.rb +7 -6
- data/test/test_cheesy_lingo.rb +37 -0
- data/test/test_color_ua.rb +9 -0
- data/test/test_internet.rb +11 -3
- data/test/test_lorem_ua.rb +45 -0
- data/test/test_music.rb +21 -0
- data/test/test_name_br.rb +1 -1
- data/test/test_name_da.rb +48 -0
- data/test/test_name_ja.rb +32 -1
- data/test/test_name_ua.rb +59 -0
- data/test/test_phone_number.rb +8 -3
- data/test/test_phone_number_br.rb +47 -0
- data/test/test_phone_number_da.rb +39 -0
- data/test/test_string.rb +6 -0
- data/test/test_time.rb +2 -2
- data/test/test_vehicle.rb +24 -0
- data/test/test_venue.rb +1 -1
- metadata +86 -5
@@ -0,0 +1,46 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module PhoneNumberCH
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
COUNTRY_PREFIX = %w[+41 0041 0]
|
9
|
+
AREA_PREFIX = %w[21 22 24 26 27 31 32 33 34 41 43 44 51 52 56 58 61 62 71 81 91]
|
10
|
+
MOBILE_PREFIX = %w[74 75 76 77 78 79]
|
11
|
+
FREE_PHONE_PREFIX = %w[800]
|
12
|
+
SHARED_COST_PREFIX = %w[840 842 844 848]
|
13
|
+
PREMIUM_RATE_PREFIX = %w[900 901 906]
|
14
|
+
PHONE_NUMBER = ['#######', ' ### ## ##']
|
15
|
+
|
16
|
+
def phone_number
|
17
|
+
case rand(5)
|
18
|
+
when 0 then home_work_phone_number
|
19
|
+
when 1 then mobile_phone_number
|
20
|
+
when 2 then free_phone_number
|
21
|
+
when 3 then shared_cost_phone_number
|
22
|
+
when 4 then premium_rate_phone_number
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
def home_work_phone_number
|
27
|
+
FFaker.numerify "#{COUNTRY_PREFIX.sample}#{AREA_PREFIX.sample}#{PHONE_NUMBER.sample}"
|
28
|
+
end
|
29
|
+
|
30
|
+
def mobile_phone_number
|
31
|
+
FFaker.numerify "#{COUNTRY_PREFIX.sample}#{MOBILE_PREFIX.sample}#{PHONE_NUMBER.sample}"
|
32
|
+
end
|
33
|
+
|
34
|
+
def free_phone_number
|
35
|
+
FFaker.numerify "#{COUNTRY_PREFIX.sample}#{FREE_PHONE_PREFIX.sample}#{PHONE_NUMBER.sample}"
|
36
|
+
end
|
37
|
+
|
38
|
+
def shared_cost_phone_number
|
39
|
+
FFaker.numerify "#{COUNTRY_PREFIX.sample}#{SHARED_COST_PREFIX.sample}#{PHONE_NUMBER.sample}"
|
40
|
+
end
|
41
|
+
|
42
|
+
def premium_rate_phone_number
|
43
|
+
FFaker.numerify "#{COUNTRY_PREFIX.sample}#{PREMIUM_RATE_PREFIX.sample}#{PHONE_NUMBER.sample}"
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -23,11 +23,11 @@ module FFaker
|
|
23
23
|
|
24
24
|
# generates mobile or home/work number
|
25
25
|
def phone_number
|
26
|
-
FFaker.numerify(
|
26
|
+
FFaker.numerify('########')
|
27
27
|
end
|
28
28
|
|
29
29
|
def country_code
|
30
|
-
|
30
|
+
'+45'
|
31
31
|
end
|
32
32
|
|
33
33
|
def international_mobile_phone_number
|
@@ -39,7 +39,7 @@ module FFaker
|
|
39
39
|
end
|
40
40
|
|
41
41
|
def international_phone_number
|
42
|
-
|
42
|
+
"#{country_code} #{phone_number}"
|
43
43
|
end
|
44
44
|
end
|
45
45
|
end
|
data/lib/ffaker/string.rb
CHANGED
@@ -47,21 +47,29 @@ module FFaker
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def process_token(tokens)
|
50
|
-
return
|
50
|
+
return "" if tokens.empty?
|
51
51
|
|
52
52
|
token = tokens.shift
|
53
53
|
|
54
54
|
case token
|
55
|
-
when
|
55
|
+
when "?" then
|
56
56
|
# TODO: Let ? generate nothing
|
57
|
-
|
58
|
-
when
|
57
|
+
"" # We already printed its target
|
58
|
+
when "+" then
|
59
59
|
tokens.unshift(token) if rand(2) == 1 # Leave the `+` on to run again
|
60
60
|
process_token(@last_token) # Run the last one at least once
|
61
|
-
when
|
61
|
+
when "*" then
|
62
62
|
tokens.unshift(token) if rand(2) == 1 # Leave the `*` on to run again
|
63
|
-
return
|
63
|
+
return "" if rand(2) == 1 # Or maybe do nothing
|
64
64
|
process_token(@last_token) # Else run the last one again
|
65
|
+
when "{" then
|
66
|
+
number = ""
|
67
|
+
while (ch = tokens.shift) != "}"
|
68
|
+
number << ch
|
69
|
+
end
|
70
|
+
number = number.to_i - 1
|
71
|
+
t = @last_token.dup
|
72
|
+
number.times.map { process_token(t.dup) }.join
|
65
73
|
else
|
66
74
|
generate_token token, tokens
|
67
75
|
end
|
data/lib/ffaker/vehicle.rb
CHANGED
@@ -11,6 +11,8 @@ module FFaker
|
|
11
11
|
beautiful bright calm dangerous dark dull fast magnetic magnificent majestic melodic metallic
|
12
12
|
mundane mute mysterious new pleasant pretty resonant royal slate soft tranquil vibrant weak
|
13
13
|
))
|
14
|
+
TRANSMISSIONS_ABBR = %w(AT MT AM CVT)
|
15
|
+
CYLINDERS = %w(2 5 6 8)
|
14
16
|
|
15
17
|
def base_color
|
16
18
|
FFaker::Color.name
|
@@ -45,5 +47,29 @@ module FFaker
|
|
45
47
|
def year
|
46
48
|
YEARS.sample
|
47
49
|
end
|
50
|
+
|
51
|
+
def transmission
|
52
|
+
TRANSMISSIONS_LIST.sample
|
53
|
+
end
|
54
|
+
|
55
|
+
def transmission_abbr
|
56
|
+
TRANSMISSIONS_ABBR.sample
|
57
|
+
end
|
58
|
+
|
59
|
+
def engine_cylinders
|
60
|
+
CYLINDERS.sample
|
61
|
+
end
|
62
|
+
|
63
|
+
def engine_displacement
|
64
|
+
DISPLACEMENTS_LIST.sample
|
65
|
+
end
|
66
|
+
|
67
|
+
def fuel_type
|
68
|
+
FUEL_TYPES_LIST.sample
|
69
|
+
end
|
70
|
+
|
71
|
+
def interior_upholstery
|
72
|
+
UPHOLSTERY_LIST.sample
|
73
|
+
end
|
48
74
|
end
|
49
75
|
end
|
data/test/test_address.rb
CHANGED
@@ -83,4 +83,8 @@ class TestAddress < Test::Unit::TestCase
|
|
83
83
|
assert_match 'UA', FFaker::Address::country_code('Ukraine')
|
84
84
|
assert_match /[A-Z]{2}/, FFaker::Address::country_code('Foo')
|
85
85
|
end
|
86
|
+
|
87
|
+
def test_time_zone
|
88
|
+
assert_include FFaker::Address::TIME_ZONE, FFaker::Address::time_zone
|
89
|
+
end
|
86
90
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'helper'
|
4
|
+
|
5
|
+
class TestAddressCHCH < Test::Unit::TestCase
|
6
|
+
def test_ch_canton_abbr
|
7
|
+
assert_match /\A[A-Z]{2}\z/, FFaker::AddressCH.canton_abbr
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_postal_code
|
11
|
+
assert_match /\A\d{4}\z/, FFaker::AddressCH.postal_code
|
12
|
+
end
|
13
|
+
end
|
data/test/test_address_da.rb
CHANGED
@@ -4,38 +4,38 @@ require 'helper'
|
|
4
4
|
|
5
5
|
class TestAddressDA < Test::Unit::TestCase
|
6
6
|
def test_zip_code
|
7
|
-
assert_match
|
7
|
+
assert_match /\A\d{4}\z/, FFaker::AddressDA.zip_code
|
8
8
|
end
|
9
9
|
|
10
10
|
def test_post_nr
|
11
|
-
assert_match
|
11
|
+
assert_match /\A\d{4}\z/, FFaker::AddressDA.post_nr
|
12
12
|
end
|
13
13
|
|
14
14
|
def test_state
|
15
|
-
assert_match
|
15
|
+
assert_match /\A[-ÆØÅæøåa-z]+\z/i, FFaker::AddressDA.state
|
16
16
|
end
|
17
17
|
|
18
18
|
def test_kommune
|
19
|
-
assert_match
|
19
|
+
assert_match /\A[-ÆØÅæøåa-z]+\z/i, FFaker::AddressDA.kommune
|
20
20
|
end
|
21
21
|
|
22
|
-
def
|
23
|
-
assert_match
|
22
|
+
def test_region
|
23
|
+
assert_match /\A[ÆØÅæøåa-z]+\z/i, FFaker::AddressDA.region
|
24
24
|
end
|
25
25
|
|
26
26
|
def test_city
|
27
|
-
assert_match
|
27
|
+
assert_match /\A[- ÆØÅæøåla-z]+\z/i, FFaker::AddressDA.city
|
28
28
|
end
|
29
29
|
|
30
30
|
def test_street_name
|
31
|
-
assert_match
|
31
|
+
assert_match /\A[. éÆØÅæøåla-z0-9]+\z/i, FFaker::AddressDA.street_name
|
32
32
|
end
|
33
33
|
|
34
34
|
def test_street_address
|
35
|
-
assert_match
|
35
|
+
assert_match /\A[. éÆØÅæøåla-z0-9]+\z/i, FFaker::AddressDA.street_address
|
36
36
|
end
|
37
37
|
|
38
38
|
def test_full_address
|
39
|
-
assert_match
|
39
|
+
assert_match /\A[. éÆØÅæøåla-z0-9]+ DANMARK\z/i, FFaker::AddressDA.full_address
|
40
40
|
end
|
41
41
|
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'helper'
|
4
|
+
|
5
|
+
class TestAddressININ < Test::Unit::TestCase
|
6
|
+
def test_in_state
|
7
|
+
assert_match /\A[A-Z][ A-Za-z]*\z/, FFaker::AddressIN.state
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_in_state_abbr
|
11
|
+
assert_match /\A[A-Z]{2}\z/, FFaker::AddressIN.state_abbr
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_in_union_territory
|
15
|
+
assert_match /\A[A-Z][ A-Za-z]*\z/, FFaker::AddressIN.union_territory
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_in_union_territory_abbr
|
19
|
+
assert_match /\A[A-Z]{2}\z/, FFaker::AddressIN.union_territory_abbr
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_in_state_and_union_territory
|
23
|
+
assert_match /\A[A-Z][ A-Za-z]*\z/, FFaker::AddressIN.state_and_union_territory
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_in_state_and_union_territory_abbr
|
27
|
+
assert_match /\A[A-Z]{2}\z/, FFaker::AddressIN.state_and_union_territory_abbr
|
28
|
+
end
|
29
|
+
|
30
|
+
def test_pincode
|
31
|
+
assert_match /[0-9]{6}/, FFaker::AddressIN.pincode
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_zip_code
|
35
|
+
assert_match /[0-9]{6}/, FFaker::AddressIN.pincode
|
36
|
+
end
|
37
|
+
|
38
|
+
def test_in_country
|
39
|
+
assert_equal "India", FFaker::AddressIN.country
|
40
|
+
end
|
41
|
+
|
42
|
+
def test_in_country_code
|
43
|
+
assert_equal "IN", FFaker::AddressIN.country_code
|
44
|
+
end
|
45
|
+
|
46
|
+
def test_in_time_zone
|
47
|
+
assert_equal "Asia/Kolkata", FFaker::AddressIN.time_zone
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'helper'
|
4
|
+
|
5
|
+
class TestAddressRU < Test::Unit::TestCase
|
6
|
+
|
7
|
+
def setup
|
8
|
+
@tester = FFaker::AddressRU
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_city
|
12
|
+
assert_match /\A[a-zа-яё\-\s]+\z/i, @tester.city
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_province
|
16
|
+
assert_match /\A[a-zа-яё\-\s]+\z/i, @tester.province
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_zip_code
|
20
|
+
assert_match /\A\d{6}\z/, @tester.zip_code
|
21
|
+
end
|
22
|
+
|
23
|
+
def test_street_name
|
24
|
+
assert_match /\A[a-zа-яё.\-\s]+\z/i, @tester.street_name
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_street_address
|
28
|
+
assert_match /\A[a-zа-яё.,\-\s\d]+\z/i, @tester.street_address
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'helper'
|
4
|
+
|
5
|
+
class TestAddressUA < Test::Unit::TestCase
|
6
|
+
|
7
|
+
def setup
|
8
|
+
@tester = FFaker::AddressUA
|
9
|
+
@multiple_words_name_regexp = /\A[а-яА-ЯіїєґІЇЄҐ’\-\s]+\z/
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_city
|
13
|
+
assert_match @multiple_words_name_regexp, @tester.city
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_country
|
17
|
+
assert_match @multiple_words_name_regexp, @tester.country
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_province
|
21
|
+
assert_match @multiple_words_name_regexp, @tester.province
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_zip_code
|
25
|
+
assert_match /\A\d{5}\z/, @tester.zip_code
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_street_name
|
29
|
+
assert_match /\Aвул\.\s[а-яА-ЯіїєґІЇЄҐ’\-\s]+\z/, @tester.street_name
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_street_address
|
33
|
+
assert_match /\Aвул\.\s[а-яА-ЯіїєґІЇЄҐ’\-\s]+,\s\d{1,3}\z/, @tester.street_address
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_street_address_with_secondary
|
37
|
+
assert_match \
|
38
|
+
/\Aвул\.\s[а-яА-ЯіїєґІЇЄҐ’\-\s]+,\s\d{1,3},\sкв\.\s\d{1,3}\z/,
|
39
|
+
@tester.street_address(true)
|
40
|
+
end
|
41
|
+
|
42
|
+
def test_building_number
|
43
|
+
assert_match /\A\d{1,3}\z/, @tester.building_number
|
44
|
+
end
|
45
|
+
|
46
|
+
def test_appartment_number
|
47
|
+
assert_match /\A\d{1,3}\z/, @tester.appartment_number
|
48
|
+
end
|
49
|
+
end
|
data/test/test_avatar.rb
CHANGED
@@ -1,22 +1,23 @@
|
|
1
1
|
require 'helper'
|
2
2
|
|
3
3
|
class TestAvatar < Test::Unit::TestCase
|
4
|
+
ROBOHASH = 'https://robohash.org'
|
5
|
+
|
4
6
|
def setup
|
5
7
|
@tester = FFaker::Avatar
|
6
8
|
end
|
7
9
|
|
8
10
|
def test_avatar
|
9
|
-
assert_match(/\
|
11
|
+
assert_match(/\Ahttps:\/\/robohash\.org\/.+\.png\?size=300x300\z/,
|
10
12
|
@tester.image)
|
11
13
|
end
|
12
14
|
|
13
15
|
def test_avatar_with_param
|
14
|
-
assert_equal(
|
15
|
-
@tester.image('faker'))
|
16
|
+
assert_equal("#{ROBOHASH}/faker.png?size=300x300", @tester.image('faker'))
|
16
17
|
end
|
17
18
|
|
18
19
|
def test_avatar_with_correct_size
|
19
|
-
assert_equal(
|
20
|
+
assert_equal("#{ROBOHASH}/faker.png?size=150x320",
|
20
21
|
@tester.image('faker', '150x320'))
|
21
22
|
end
|
22
23
|
|
@@ -27,7 +28,7 @@ class TestAvatar < Test::Unit::TestCase
|
|
27
28
|
end
|
28
29
|
|
29
30
|
def test_avatar_with_supported_format
|
30
|
-
assert_equal(
|
31
|
+
assert_equal("#{ROBOHASH}/faker.jpg?size=300x300",
|
31
32
|
@tester.image('faker', '300x300', 'jpg'))
|
32
33
|
end
|
33
34
|
|
@@ -38,7 +39,7 @@ class TestAvatar < Test::Unit::TestCase
|
|
38
39
|
end
|
39
40
|
|
40
41
|
def test_avatar_with_correct_background
|
41
|
-
assert_equal(
|
42
|
+
assert_equal("#{ROBOHASH}/faker.png?size=300x300&bgset=bg1",
|
42
43
|
@tester.image('faker', '300x300', 'png', '1'))
|
43
44
|
end
|
44
45
|
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
class TestCheesyLingo < Test::Unit::TestCase
|
4
|
+
|
5
|
+
TEST_REGEX = /\+1|[a-z]+/i
|
6
|
+
|
7
|
+
|
8
|
+
def setup
|
9
|
+
@tester = FFaker::CheesyLingo
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_title
|
13
|
+
assert_match TEST_REGEX, @tester.title
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_word
|
17
|
+
assert_match TEST_REGEX, @tester.word
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_words
|
21
|
+
assert_match TEST_REGEX, @tester.words(3).join(" ")
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_sentence
|
25
|
+
assert_match TEST_REGEX, @tester.sentence
|
26
|
+
assert_match /1\+|[ a-zA-Z]+./, @tester.sentence
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_paragraph #without passing count
|
30
|
+
assert_match /\+|[a-zA-Z]*./, @tester.paragraph(1)
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_paragraph_with_arg
|
34
|
+
assert_match /\+1|[a-zA-Z]+./, @tester.paragraph(3)
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|