forgery 0.6.0 → 0.7.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/.travis.yml +3 -5
- data/Gemfile.lock +20 -12
- data/README.markdown +147 -0
- data/forgery.gemspec +15 -15
- data/lib/forgery/dictionaries/bics +7 -0
- data/lib/forgery/dictionaries/ibans +61 -0
- data/lib/forgery/dictionaries/job_titles +1 -1
- data/lib/forgery/dictionaries/zones +1 -2
- data/lib/forgery/extensions/range.rb +1 -1
- data/lib/forgery/file_reader.rb +1 -1
- data/lib/forgery/forgery/bank_account.rb +25 -0
- data/lib/forgery/forgery/credit_card.rb +1 -1
- data/lib/forgery/forgery/lorem_ipsum.rb +4 -4
- data/lib/forgery/formats/phone +1 -1
- data/lib/forgery/version.rb +1 -1
- data/spec/dictionaries_spec.rb +5 -5
- data/spec/extensions/array_spec.rb +4 -4
- data/spec/extensions/range_spec.rb +16 -14
- data/spec/extensions/string_spec.rb +5 -5
- data/spec/file_reader_spec.rb +6 -6
- data/spec/forgery/address_spec.rb +15 -15
- data/spec/forgery/bank_account_spec.rb +16 -0
- data/spec/forgery/basic_spec.rb +41 -41
- data/spec/forgery/credit_card_spec.rb +9 -9
- data/spec/forgery/currency_spec.rb +2 -2
- data/spec/forgery/date_spec.rb +21 -21
- data/spec/forgery/internet_spec.rb +11 -11
- data/spec/forgery/lorem_ipsum_spec.rb +25 -25
- data/spec/forgery/monetary_spec.rb +2 -2
- data/spec/forgery/name_spec.rb +2 -2
- data/spec/forgery/personal_spec.rb +2 -2
- data/spec/forgery/russian_tax_spec.rb +13 -13
- data/spec/forgery/time_spec.rb +1 -1
- data/spec/forgery_spec.rb +25 -25
- data/spec/formats_spec.rb +5 -5
- metadata +10 -5
data/lib/forgery/formats/phone
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
#-###-###-####
|
data/lib/forgery/version.rb
CHANGED
data/spec/dictionaries_spec.rb
CHANGED
@@ -6,7 +6,7 @@ describe Forgery::Dictionaries do
|
|
6
6
|
|
7
7
|
dictionaries[:colors]
|
8
8
|
|
9
|
-
dictionaries.
|
9
|
+
expect(dictionaries).to be_loaded(:colors)
|
10
10
|
end
|
11
11
|
|
12
12
|
it "should load a dictionary when called by the key" do
|
@@ -14,11 +14,11 @@ describe Forgery::Dictionaries do
|
|
14
14
|
|
15
15
|
dictionaries.reset!
|
16
16
|
|
17
|
-
dictionaries.
|
17
|
+
expect(dictionaries).not_to be_loaded(:colors)
|
18
18
|
|
19
19
|
dictionaries[:colors]
|
20
20
|
|
21
|
-
dictionaries.
|
21
|
+
expect(dictionaries).to be_loaded(:colors)
|
22
22
|
end
|
23
23
|
|
24
24
|
it "should clear the loaded dictionaries when calling reset!" do
|
@@ -26,10 +26,10 @@ describe Forgery::Dictionaries do
|
|
26
26
|
|
27
27
|
dictionaries[:colors]
|
28
28
|
|
29
|
-
dictionaries.
|
29
|
+
expect(dictionaries).to be_loaded(:colors)
|
30
30
|
|
31
31
|
dictionaries.reset!
|
32
32
|
|
33
|
-
dictionaries.
|
33
|
+
expect(dictionaries).not_to be_loaded(:colors)
|
34
34
|
end
|
35
35
|
end
|
@@ -6,20 +6,20 @@ describe Array do
|
|
6
6
|
end
|
7
7
|
|
8
8
|
it "should get a random item out of the array" do
|
9
|
-
10.times { @array.
|
9
|
+
10.times { expect(@array).to include(@array.random) }
|
10
10
|
end
|
11
11
|
|
12
12
|
it "should return nil if the array is empty" do
|
13
|
-
Forgery::Extend([]).random.
|
13
|
+
expect(Forgery::Extend([]).random).to be_nil
|
14
14
|
end
|
15
15
|
|
16
16
|
it "should return a random subset of the array" do
|
17
17
|
@array.random_subset(5).each do |i|
|
18
|
-
@array.
|
18
|
+
expect(@array).to include(i)
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
22
|
it "should return a random subset of the array that is 3 long" do
|
23
|
-
@array.random_subset(3).size.
|
23
|
+
expect(@array.random_subset(3).size).to eq(3)
|
24
24
|
end
|
25
25
|
end
|
@@ -2,30 +2,32 @@ require 'spec_helper'
|
|
2
2
|
require 'timeout'
|
3
3
|
|
4
4
|
describe Range do
|
5
|
-
it
|
5
|
+
it 'should get a random number out of the range' do
|
6
6
|
range = Forgery::Extend(0..9)
|
7
|
-
10.times { range.
|
7
|
+
10.times { expect(range).to include(range.random) }
|
8
8
|
end
|
9
9
|
|
10
|
-
it
|
11
|
-
|
10
|
+
it 'should not take a long time when the range is huge' do
|
11
|
+
expect do
|
12
|
+
Timeout.timeout(1) { Forgery::Extend(1_234_567_890..12_345_678_901_234_567_890).random }
|
13
|
+
end.not_to raise_error
|
12
14
|
end
|
13
15
|
|
14
|
-
it
|
15
|
-
10.times { Forgery::Extend(9..0).random.
|
16
|
+
it 'should return nil for a random number from a reverse range' do
|
17
|
+
10.times { expect(Forgery::Extend(9..0).random).to be_nil }
|
16
18
|
end
|
17
19
|
|
18
|
-
it
|
19
|
-
range = Forgery::Extend(
|
20
|
-
10.times { range.
|
20
|
+
it 'should get a random string our of the range' do
|
21
|
+
range = Forgery::Extend('a'..'z')
|
22
|
+
10.times { expect(range).to include(range.random) }
|
21
23
|
end
|
22
24
|
|
23
|
-
it
|
24
|
-
Forgery::Extend(
|
25
|
+
it 'should return nil if the maximum is less than the minimum' do
|
26
|
+
expect(Forgery::Extend('z'..'a').random).to be_nil
|
25
27
|
end
|
26
28
|
|
27
|
-
it
|
28
|
-
|
29
|
-
Forgery::Extend(0...9).random.
|
29
|
+
it 'should not return the maximum at excluded range' do
|
30
|
+
expect(Random).to receive(:rand).with(0...9).and_return(8)
|
31
|
+
expect(Forgery::Extend(0...9).random).to_not eq(9)
|
30
32
|
end
|
31
33
|
end
|
@@ -2,12 +2,12 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe String do
|
4
4
|
it "should change a single # to a number 0-9" do
|
5
|
-
(0..9).
|
5
|
+
expect(0..9).to include(Integer(Forgery::Extend("#").to_numbers))
|
6
6
|
end
|
7
7
|
|
8
8
|
it "should change two #'s to two numbers 0-9" do
|
9
9
|
Forgery::Extend("##").to_numbers.split("").each do |s|
|
10
|
-
(0..9).
|
10
|
+
expect(0..9).to include(Integer(s))
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
@@ -16,14 +16,14 @@ describe String do
|
|
16
16
|
n = s.to_numbers
|
17
17
|
0.upto(s.size - 1) do |i|
|
18
18
|
if s[i, 1] == "#"
|
19
|
-
('0'..'9').
|
19
|
+
expect('0'..'9').to include(n[i, 1])
|
20
20
|
else
|
21
|
-
('0'..'9').
|
21
|
+
expect('0'..'9').not_to include(n[i, 1])
|
22
22
|
end
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
26
|
it "should allow the replacing of a different character" do
|
27
|
-
(0..9).
|
27
|
+
expect(0..9).to include(Integer(Forgery::Extend("-").to_numbers("-")))
|
28
28
|
end
|
29
29
|
end
|
data/spec/file_reader_spec.rb
CHANGED
@@ -2,27 +2,27 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe Forgery::FileReader do
|
4
4
|
it "should return an array when calling read_dictionary" do
|
5
|
-
Forgery::FileReader.read_dictionary(:colors).
|
5
|
+
expect(Forgery::FileReader.read_dictionary(:colors)).to be_is_a(Array)
|
6
6
|
end
|
7
7
|
|
8
8
|
it "should return an array when calling read_format" do
|
9
|
-
Forgery::FileReader.read_format(:phone).
|
9
|
+
expect(Forgery::FileReader.read_format(:phone)).to be_is_a(Array)
|
10
10
|
end
|
11
11
|
|
12
12
|
it "should override default dictionaries if Forgery#load_from! was called" do
|
13
13
|
Forgery.load_from! "spec/data"
|
14
|
-
Forgery::FileReader.read_dictionary(:female_first_names).
|
14
|
+
expect(Forgery::FileReader.read_dictionary(:female_first_names)).to eq(%w(Amber))
|
15
15
|
end
|
16
16
|
|
17
17
|
it "should read dictionaries from custom places if Forgery#load_from! was called" do
|
18
18
|
Forgery.load_from! "spec/data"
|
19
|
-
Forgery::FileReader.read_dictionary(:code_names).
|
19
|
+
expect(Forgery::FileReader.read_dictionary(:code_names)).to include('Shiretoko')
|
20
20
|
end
|
21
21
|
|
22
22
|
it "should raise an exception if file wasn't found in load paths" do
|
23
|
-
|
23
|
+
expect {
|
24
24
|
Forgery::FileReader.read_dictionary(:non_existing_dictionary)
|
25
|
-
}.
|
25
|
+
}.to raise_error(ArgumentError)
|
26
26
|
end
|
27
27
|
after do
|
28
28
|
# reset load_paths
|
@@ -2,16 +2,16 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe Forgery::Address do
|
4
4
|
it "should return a random street" do
|
5
|
-
Forgery.dictionaries[:streets].
|
5
|
+
expect(Forgery.dictionaries[:streets]).to include(Forgery::Address.street_name)
|
6
6
|
end
|
7
7
|
|
8
8
|
it "should return a random street number" do
|
9
9
|
original_format = Forgery::Address.street_number.gsub(/\d/, '#')
|
10
|
-
Forgery.formats[:street_number].
|
10
|
+
expect(Forgery.formats[:street_number]).to include(original_format)
|
11
11
|
end
|
12
12
|
|
13
13
|
it "should return a random street suffix" do
|
14
|
-
Forgery.dictionaries[:street_suffixes].
|
14
|
+
expect(Forgery.dictionaries[:street_suffixes]).to include(Forgery::Address.street_suffix)
|
15
15
|
end
|
16
16
|
|
17
17
|
describe ".street_address" do
|
@@ -21,64 +21,64 @@ describe Forgery::Address do
|
|
21
21
|
|
22
22
|
it "should return a random street suffix" do
|
23
23
|
street_suffix = @split_address.pop
|
24
|
-
Forgery.dictionaries[:street_suffixes].
|
24
|
+
expect(Forgery.dictionaries[:street_suffixes]).to include(street_suffix)
|
25
25
|
end
|
26
26
|
|
27
27
|
it "should return a random street number" do
|
28
28
|
street_number_format = @split_address.shift.gsub(/\d/, '#')
|
29
|
-
Forgery.formats[:street_number].
|
29
|
+
expect(Forgery.formats[:street_number]).to include(street_number_format)
|
30
30
|
end
|
31
31
|
|
32
32
|
it "should return a random street" do
|
33
33
|
@split_address.pop
|
34
34
|
@split_address.shift
|
35
35
|
street = @split_address.join(" ")
|
36
|
-
Forgery.dictionaries[:streets].
|
36
|
+
expect(Forgery.dictionaries[:streets]).to include(street)
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
40
|
it "should return a random city" do
|
41
41
|
city = Forgery::Address.city
|
42
|
-
Forgery.dictionaries[:cities].
|
42
|
+
expect(Forgery.dictionaries[:cities]).to include(city)
|
43
43
|
end
|
44
44
|
|
45
45
|
it "should return a random state" do
|
46
46
|
state = Forgery::Address.state
|
47
|
-
Forgery.dictionaries[:states].
|
47
|
+
expect(Forgery.dictionaries[:states]).to include(state)
|
48
48
|
end
|
49
49
|
|
50
50
|
it "should return a random state abbreviation" do
|
51
51
|
state_abbrev = Forgery::Address.state_abbrev
|
52
|
-
Forgery.dictionaries[:state_abbrevs].
|
52
|
+
expect(Forgery.dictionaries[:state_abbrevs]).to include(state_abbrev)
|
53
53
|
end
|
54
54
|
|
55
55
|
it "should return a random Canadian province or territory" do
|
56
56
|
province = Forgery::Address.province
|
57
|
-
Forgery.dictionaries[:provinces].
|
57
|
+
expect(Forgery.dictionaries[:provinces]).to include(province)
|
58
58
|
end
|
59
59
|
|
60
60
|
it "should return a random Canadian province or territory abbreviation" do
|
61
61
|
province_abbrev = Forgery::Address.province_abbrev
|
62
|
-
Forgery.dictionaries[:province_abbrevs].
|
62
|
+
expect(Forgery.dictionaries[:province_abbrevs]).to include(province_abbrev)
|
63
63
|
end
|
64
64
|
|
65
65
|
it "should return a random country" do
|
66
66
|
country = Forgery::Address.country
|
67
|
-
Forgery.dictionaries[:countries].
|
67
|
+
expect(Forgery.dictionaries[:countries]).to include(country)
|
68
68
|
end
|
69
69
|
|
70
70
|
it "should return a random continent" do
|
71
71
|
continent = Forgery::Address.continent
|
72
|
-
Forgery.dictionaries[:continents].
|
72
|
+
expect(Forgery.dictionaries[:continents]).to include(continent)
|
73
73
|
end
|
74
74
|
|
75
75
|
it "should return a random zip code" do
|
76
76
|
zip_format = Forgery::Address.zip.gsub(/\d/, '#')
|
77
|
-
Forgery.formats[:zip].
|
77
|
+
expect(Forgery.formats[:zip]).to include(zip_format)
|
78
78
|
end
|
79
79
|
|
80
80
|
it "should return a random phone number" do
|
81
81
|
phone_format = Forgery::Address.phone.gsub(/\d/, '#')
|
82
|
-
Forgery.formats[:phone].
|
82
|
+
expect(Forgery.formats[:phone]).to include(phone_format)
|
83
83
|
end
|
84
84
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Forgery::BankAccount do
|
4
|
+
|
5
|
+
describe 'ibans' do
|
6
|
+
it 'returns a random iban' do
|
7
|
+
expect(Forgery.dictionaries[:ibans]).to include(Forgery::BankAccount.iban)
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
describe 'bics' do
|
12
|
+
it 'returns a random bic' do
|
13
|
+
expect(Forgery.dictionaries[:bics]).to include(Forgery::BankAccount.bic)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/spec/forgery/basic_spec.rb
CHANGED
@@ -3,54 +3,54 @@ require 'spec_helper'
|
|
3
3
|
describe Forgery::Basic do
|
4
4
|
describe ".password" do
|
5
5
|
it "should only uppercase characters" do
|
6
|
-
Forgery::Basic.password(:allow_lower => false,
|
6
|
+
expect(Forgery::Basic.password(:allow_lower => false,
|
7
7
|
:allow_upper => true,
|
8
8
|
:allow_numeric => false,
|
9
|
-
:allow_special => false).
|
9
|
+
:allow_special => false)).to only_contain(Forgery::Basic::UPPER_ALPHA)
|
10
10
|
end
|
11
11
|
|
12
12
|
it "should only contain lowercase characters" do
|
13
|
-
Forgery::Basic.password(:allow_lower => true,
|
13
|
+
expect(Forgery::Basic.password(:allow_lower => true,
|
14
14
|
:allow_upper => false,
|
15
15
|
:allow_numeric => false,
|
16
|
-
:allow_special => false).
|
16
|
+
:allow_special => false)).to only_contain(Forgery::Basic::LOWER_ALPHA)
|
17
17
|
end
|
18
18
|
|
19
19
|
it "should only contain numeric characters" do
|
20
|
-
Forgery::Basic.password(:allow_lower => false,
|
20
|
+
expect(Forgery::Basic.password(:allow_lower => false,
|
21
21
|
:allow_upper => false,
|
22
22
|
:allow_numeric => true,
|
23
|
-
:allow_special => false).
|
23
|
+
:allow_special => false)).to only_contain(Forgery::Basic::NUMERIC)
|
24
24
|
end
|
25
25
|
|
26
26
|
it "should only contain special characters" do
|
27
|
-
Forgery::Basic.password(:allow_lower => false,
|
27
|
+
expect(Forgery::Basic.password(:allow_lower => false,
|
28
28
|
:allow_upper => false,
|
29
29
|
:allow_numeric => false,
|
30
|
-
:allow_special => true).
|
30
|
+
:allow_special => true)).to only_contain(Forgery::Basic::SPECIAL_CHARACTERS)
|
31
31
|
end
|
32
32
|
|
33
33
|
it "should only contain lower and uppercase characters" do
|
34
|
-
Forgery::Basic.password(:allow_lower => true,
|
34
|
+
expect(Forgery::Basic.password(:allow_lower => true,
|
35
35
|
:allow_upper => true,
|
36
36
|
:allow_numeric => false,
|
37
|
-
:allow_special => false).
|
37
|
+
:allow_special => false)).to only_contain(Forgery::Basic::LOWER_ALPHA,
|
38
38
|
Forgery::Basic::UPPER_ALPHA)
|
39
39
|
end
|
40
40
|
|
41
41
|
it "should only contain numeric and special characters" do
|
42
|
-
Forgery::Basic.password(:allow_lower => false,
|
42
|
+
expect(Forgery::Basic.password(:allow_lower => false,
|
43
43
|
:allow_upper => false,
|
44
44
|
:allow_numeric => true,
|
45
|
-
:allow_special => true).
|
45
|
+
:allow_special => true)).to only_contain(Forgery::Basic::NUMERIC,
|
46
46
|
Forgery::Basic::SPECIAL_CHARACTERS)
|
47
47
|
end
|
48
48
|
|
49
49
|
it "should contain any of the defined characters" do
|
50
|
-
Forgery::Basic.password(:allow_lower => true,
|
50
|
+
expect(Forgery::Basic.password(:allow_lower => true,
|
51
51
|
:allow_upper => true,
|
52
52
|
:allow_numeric => true,
|
53
|
-
:allow_special => true).
|
53
|
+
:allow_special => true)).to only_contain(Forgery::Basic::NUMERIC,
|
54
54
|
Forgery::Basic::SPECIAL_CHARACTERS,
|
55
55
|
Forgery::Basic::LOWER_ALPHA,
|
56
56
|
Forgery::Basic::UPPER_ALPHA)
|
@@ -59,118 +59,118 @@ describe Forgery::Basic do
|
|
59
59
|
|
60
60
|
describe ".encrypt" do
|
61
61
|
it "should encrypt to hex digits" do
|
62
|
-
Forgery::Basic.encrypt("something").
|
62
|
+
expect(Forgery::Basic.encrypt("something")).to only_contain(Forgery::Basic::HEX_DIGITS)
|
63
63
|
end
|
64
64
|
|
65
65
|
it "should encrypt different words to different output" do
|
66
|
-
Forgery::Basic.encrypt("foo").
|
66
|
+
expect(Forgery::Basic.encrypt("foo")).not_to eq(Forgery::Basic.encrypt("bar"))
|
67
67
|
end
|
68
68
|
|
69
69
|
it "should allow a salt that changes the output" do
|
70
|
-
Forgery::Basic.encrypt("foo", "baz").
|
70
|
+
expect(Forgery::Basic.encrypt("foo", "baz")).not_to eq(Forgery::Basic.encrypt("foo", "bar"))
|
71
71
|
end
|
72
72
|
|
73
73
|
it "should have the same output when encrypting twice" do
|
74
|
-
Forgery::Basic.encrypt("foo", "bar").
|
74
|
+
expect(Forgery::Basic.encrypt("foo", "bar")).to eq(Forgery::Basic.encrypt("foo", "bar"))
|
75
75
|
end
|
76
76
|
end
|
77
77
|
|
78
78
|
describe ".boolean" do
|
79
79
|
it "should return true or false" do
|
80
|
-
[true, false].
|
80
|
+
expect([true, false]).to include(Forgery::Basic.boolean)
|
81
81
|
end
|
82
82
|
end
|
83
83
|
|
84
84
|
describe ".color" do
|
85
85
|
it "should return a random color" do
|
86
|
-
Forgery.dictionaries[:colors].
|
86
|
+
expect(Forgery.dictionaries[:colors]).to include(Forgery::Basic.color)
|
87
87
|
end
|
88
88
|
end
|
89
89
|
|
90
90
|
describe ".hex_color" do
|
91
91
|
it "should return a 6-character hex color" do
|
92
|
-
Forgery::Basic.hex_color.
|
92
|
+
expect(Forgery::Basic.hex_color).to match(/#(#{Forgery::Basic::HEX_DIGITS.join('|')}){6}/)
|
93
93
|
end
|
94
94
|
end
|
95
95
|
|
96
96
|
describe ".short_hex_color" do
|
97
97
|
it "should return a 3-character hex color" do
|
98
|
-
Forgery::Basic.short_hex_color.
|
98
|
+
expect(Forgery::Basic.short_hex_color).to match(/#(#{Forgery::Basic::HEX_DIGITS.join('|')}){3}/)
|
99
99
|
end
|
100
100
|
end
|
101
101
|
|
102
102
|
describe ".number" do
|
103
103
|
it "should return a number >= the at_least option" do
|
104
|
-
Forgery::Basic.number(:at_least => 2).
|
104
|
+
expect(Forgery::Basic.number(:at_least => 2)).to be >= 2
|
105
105
|
end
|
106
106
|
|
107
107
|
it "should return a number <= the at_most option" do
|
108
|
-
Forgery::Basic.number(:at_most => 12).
|
108
|
+
expect(Forgery::Basic.number(:at_most => 12)).to be <= 12
|
109
109
|
end
|
110
110
|
end
|
111
111
|
|
112
112
|
describe ".text" do
|
113
113
|
it "should return text whose length is >= the at_least option" do
|
114
|
-
Forgery::Basic.text(:at_least => 5).size.
|
114
|
+
expect(Forgery::Basic.text(:at_least => 5).size).to be >= 5
|
115
115
|
end
|
116
116
|
|
117
117
|
it "should return text whose length is <= the at_most option" do
|
118
|
-
Forgery::Basic.text(:at_most => 15).size.
|
118
|
+
expect(Forgery::Basic.text(:at_most => 15).size).to be <= 15
|
119
119
|
end
|
120
120
|
|
121
121
|
it "should return text whose length is == the exactly option" do
|
122
|
-
Forgery::Basic.text(:exactly => 20).size.
|
122
|
+
expect(Forgery::Basic.text(:exactly => 20).size).to eq(20)
|
123
123
|
end
|
124
124
|
|
125
125
|
it "should only uppercase characters" do
|
126
|
-
Forgery::Basic.text(:allow_lower => false,
|
126
|
+
expect(Forgery::Basic.text(:allow_lower => false,
|
127
127
|
:allow_upper => true,
|
128
128
|
:allow_numeric => false,
|
129
|
-
:allow_special => false).
|
129
|
+
:allow_special => false)).to only_contain(Forgery::Basic::UPPER_ALPHA)
|
130
130
|
end
|
131
131
|
|
132
132
|
it "should only contain lowercase characters" do
|
133
|
-
Forgery::Basic.text(:allow_lower => true,
|
133
|
+
expect(Forgery::Basic.text(:allow_lower => true,
|
134
134
|
:allow_upper => false,
|
135
135
|
:allow_numeric => false,
|
136
|
-
:allow_special => false).
|
136
|
+
:allow_special => false)).to only_contain(Forgery::Basic::LOWER_ALPHA)
|
137
137
|
end
|
138
138
|
|
139
139
|
it "should only contain numeric characters" do
|
140
|
-
Forgery::Basic.text(:allow_lower => false,
|
140
|
+
expect(Forgery::Basic.text(:allow_lower => false,
|
141
141
|
:allow_upper => false,
|
142
142
|
:allow_numeric => true,
|
143
|
-
:allow_special => false).
|
143
|
+
:allow_special => false)).to only_contain(Forgery::Basic::NUMERIC)
|
144
144
|
end
|
145
145
|
|
146
146
|
it "should only contain special characters" do
|
147
|
-
Forgery::Basic.text(:allow_lower => false,
|
147
|
+
expect(Forgery::Basic.text(:allow_lower => false,
|
148
148
|
:allow_upper => false,
|
149
149
|
:allow_numeric => false,
|
150
|
-
:allow_special => true).
|
150
|
+
:allow_special => true)).to only_contain(Forgery::Basic::SPECIAL_CHARACTERS)
|
151
151
|
end
|
152
152
|
|
153
153
|
it "should only contain lower and uppercase characters" do
|
154
|
-
Forgery::Basic.text(:allow_lower => true,
|
154
|
+
expect(Forgery::Basic.text(:allow_lower => true,
|
155
155
|
:allow_upper => true,
|
156
156
|
:allow_numeric => false,
|
157
|
-
:allow_special => false).
|
157
|
+
:allow_special => false)).to only_contain(Forgery::Basic::LOWER_ALPHA,
|
158
158
|
Forgery::Basic::UPPER_ALPHA)
|
159
159
|
end
|
160
160
|
|
161
161
|
it "should only contain numeric and special characters" do
|
162
|
-
Forgery::Basic.text(:allow_lower => false,
|
162
|
+
expect(Forgery::Basic.text(:allow_lower => false,
|
163
163
|
:allow_upper => false,
|
164
164
|
:allow_numeric => true,
|
165
|
-
:allow_special => true).
|
165
|
+
:allow_special => true)).to only_contain(Forgery::Basic::NUMERIC,
|
166
166
|
Forgery::Basic::SPECIAL_CHARACTERS)
|
167
167
|
end
|
168
168
|
|
169
169
|
it "should contain any of the defined characters" do
|
170
|
-
Forgery::Basic.text(:allow_lower => true,
|
170
|
+
expect(Forgery::Basic.text(:allow_lower => true,
|
171
171
|
:allow_upper => true,
|
172
172
|
:allow_numeric => true,
|
173
|
-
:allow_special => true).
|
173
|
+
:allow_special => true)).to only_contain(Forgery::Basic::NUMERIC,
|
174
174
|
Forgery::Basic::SPECIAL_CHARACTERS,
|
175
175
|
Forgery::Basic::LOWER_ALPHA,
|
176
176
|
Forgery::Basic::UPPER_ALPHA)
|