forgery 0.6.0 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- 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)
|