linguistics 2.0.2 → 2.0.3

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.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/.simplecov +12 -0
  5. data/ChangeLog +773 -11
  6. data/History.rdoc +9 -0
  7. data/Manifest.txt +3 -2
  8. data/README.rdoc +5 -5
  9. data/Rakefile +49 -19
  10. data/examples/generalize_sentence.rb +2 -2
  11. data/lib/linguistics.rb +4 -4
  12. data/lib/linguistics/en/articles.rb +1 -1
  13. data/lib/linguistics/en/conjugation.rb +6 -6
  14. data/lib/linguistics/en/conjunctions.rb +1 -1
  15. data/lib/linguistics/en/infinitives.rb +1 -1
  16. data/lib/linguistics/en/linkparser.rb +11 -11
  17. data/lib/linguistics/en/numbers.rb +11 -11
  18. data/lib/linguistics/en/participles.rb +1 -1
  19. data/lib/linguistics/en/pluralization.rb +16 -16
  20. data/lib/linguistics/en/wordnet.rb +1 -1
  21. data/lib/linguistics/languagebehavior.rb +1 -1
  22. data/spec/{lib/constants.rb → constants.rb} +0 -0
  23. data/spec/helpers.rb +39 -0
  24. data/spec/linguistics/en/articles_spec.rb +194 -203
  25. data/spec/linguistics/en/conjugation_spec.rb +519 -521
  26. data/spec/linguistics/en/conjunctions_spec.rb +31 -47
  27. data/spec/linguistics/en/infinitives_spec.rb +193 -207
  28. data/spec/linguistics/en/linkparser_spec.rb +9 -20
  29. data/spec/linguistics/en/numbers_spec.rb +289 -302
  30. data/spec/linguistics/en/participles_spec.rb +6 -20
  31. data/spec/linguistics/en/pluralization_spec.rb +894 -908
  32. data/spec/linguistics/en/stemmer_spec.rb +10 -23
  33. data/spec/linguistics/en/titlecase_spec.rb +3 -13
  34. data/spec/linguistics/en/wordnet_spec.rb +10 -30
  35. data/spec/linguistics/en_spec.rb +14 -28
  36. data/spec/linguistics/inflector_spec.rb +3 -21
  37. data/spec/linguistics/iso639_spec.rb +28 -37
  38. data/spec/linguistics/monkeypatches_spec.rb +5 -14
  39. data/spec/linguistics_spec.rb +11 -30
  40. metadata +44 -15
  41. metadata.gz.sig +0 -0
  42. data/spec/lib/helpers.rb +0 -38
@@ -1,17 +1,8 @@
1
1
  #!/usr/bin/env spec -cfs
2
2
 
3
- BEGIN {
4
- require 'pathname'
5
- basedir = Pathname.new( __FILE__ ).dirname.parent.parent.parent
6
-
7
- libdir = basedir + "lib"
8
-
9
- $LOAD_PATH.unshift( basedir.to_s ) unless $LOAD_PATH.include?( basedir.to_s )
10
- $LOAD_PATH.unshift( libdir.to_s ) unless $LOAD_PATH.include?( libdir.to_s )
11
- }
3
+ require_relative '../../helpers'
12
4
 
13
5
  require 'rspec'
14
- require 'spec/lib/helpers'
15
6
 
16
7
  require 'linguistics'
17
8
  require 'linguistics/en'
@@ -22,25 +13,25 @@ describe Linguistics::EN::Conjunctions do
22
13
 
23
14
  before( :all ) do
24
15
  Linguistics.use( :en )
25
- setup_logging( :fatal )
26
16
  end
27
17
 
28
18
 
29
- TEST_ITEMS = %w[cow chicken dog goat dog dog duck duck goose goose goose dog goat]
19
+ let( :test_items ) { %w[cow chicken dog goat dog dog duck duck goose goose goose dog goat] }
20
+
30
21
 
31
22
  it "don't use a penultimate separator if it's turned off" do
32
- TEST_ITEMS.en.conjunction( :penultimate => false ).should ==
33
- "four dogs, three geese, two goats, two ducks, a cow and a chicken"
23
+ expect( test_items.en.conjunction(penultimate: false) ).
24
+ to eq( "four dogs, three geese, two goats, two ducks, a cow and a chicken" )
34
25
  end
35
26
 
36
27
  it "honors the penultimate setting even if there are only three items (bugfix)" do
37
- %w[duck cow dog].en.conjunction( :penultimate => false ).should ==
38
- "a duck, a cow and a dog"
28
+ expect( %w[duck cow dog].en.conjunction(penultimate: false) ).
29
+ to eq( "a duck, a cow and a dog" )
39
30
  end
40
31
 
41
32
  it "uses the supplied block for transformation before building the conjunction" do
42
- TEST_ITEMS.en.conjunction {|item| "'%s' animal" % [item[0]] }.should ==
43
- "six 'd' animals, five 'g' animals, and two 'c' animals"
33
+ expect( test_items.en.conjunction {|item| "'%s' animal" % [ item[0] ]} ).
34
+ to eq( "six 'd' animals, five 'g' animals, and two 'c' animals" )
44
35
  end
45
36
 
46
37
  it "uses the alternative separator if one or more phrases include the primary one" do
@@ -52,21 +43,20 @@ describe Linguistics::EN::Conjunctions do
52
43
  "hat rack",
53
44
  ]
54
45
 
55
- scene_items.en.conjunction.should ==
46
+ expect( scene_items.en.conjunction ).to eq(
56
47
  "three chairs; a desk with stamps, paper, and envelopes on it; " +
57
48
  "a basket containing milk, eggs, and broccoli; " +
58
49
  "a wooden chest; and a hat rack"
50
+ )
59
51
  end
60
52
 
61
53
 
62
54
  describe "with an Array of a single element" do
63
55
 
64
- before( :each ) do
65
- @array = ['cat']
66
- end
56
+ let( :array ) { %w[cat] }
67
57
 
68
58
  it "results in a phrase with indefinite article" do
69
- @array.en.conjunction.should == "a cat"
59
+ expect( array.en.conjunction ).to eq( "a cat" )
70
60
  end
71
61
 
72
62
  end
@@ -74,20 +64,18 @@ describe Linguistics::EN::Conjunctions do
74
64
 
75
65
  describe "with an Array of two different words" do
76
66
 
77
- before( :each ) do
78
- @array = ['cat', 'dog']
79
- end
67
+ let( :array ) { %w[cat dog] }
80
68
 
81
69
  it "results in a phrase joined with 'and' with default options" do
82
- @array.en.conjunction.should == "a cat and a dog"
70
+ expect( array.en.conjunction ).to eq( "a cat and a dog" )
83
71
  end
84
72
 
85
73
  it "results in a phrase joined with 'plus' if 'plus' is set as the conjunctive" do
86
- @array.en.conjunction(:conjunctive => 'plus').should == "a cat plus a dog"
74
+ expect( array.en.conjunction(:conjunctive => 'plus') ).to eq( "a cat plus a dog" )
87
75
  end
88
76
 
89
77
  it "results in a phrase joined with a space if an empty string is set as the conjunctive" do
90
- @array.en.conjunction(:conjunctive => '').should == "a cat a dog"
78
+ expect( array.en.conjunction(:conjunctive => '') ).to eq( "a cat a dog" )
91
79
  end
92
80
 
93
81
  end
@@ -95,24 +83,22 @@ describe Linguistics::EN::Conjunctions do
95
83
 
96
84
  describe "with an Array of two words that differ only in case" do
97
85
 
98
- before( :each ) do
99
- @array = ['cat', 'Cat']
100
- end
86
+ let( :array ) { %w[cat Cat] }
101
87
 
102
88
  it "combines them into their downcased equivalents with default options" do
103
- @array.en.conjunction.should == "two cats"
89
+ expect( array.en.conjunction ).to eq( "two cats" )
104
90
  end
105
91
 
106
92
  it "lists them separately if :combine is set to false" do
107
- @array.en.conjunction(:combine => false).should == "a cat and a Cat"
93
+ expect( array.en.conjunction(:combine => false) ).to eq( "a cat and a Cat" )
108
94
  end
109
95
 
110
96
  it "doesn't combine them if :casefold is turned off" do
111
- @array.en.conjunction(:casefold => false).should == "a cat and a Cat"
97
+ expect( array.en.conjunction(:casefold => false) ).to eq( "a cat and a Cat" )
112
98
  end
113
99
 
114
100
  it "combines and lists them with a non-specific count if :generalize is set" do
115
- @array.en.conjunction(:generalize => true).should == "several cats"
101
+ expect( array.en.conjunction(:generalize => true) ).to eq( "several cats" )
116
102
  end
117
103
 
118
104
  end
@@ -120,32 +106,30 @@ describe Linguistics::EN::Conjunctions do
120
106
 
121
107
  describe "with an Array of many (more than two) words of varying cases" do
122
108
 
123
- before( :each ) do
124
- @array = %w{cat dog fox dog chicken chicken Fox chicken goose Dog goose}
125
- end
109
+ let( :array ) { %w[cat dog fox dog chicken chicken Fox chicken goose Dog goose] }
126
110
 
127
111
  it "combines them into their downcased equivalents and lists them in order of amount " +
128
112
  "with default options" do
129
- @array.en.conjunction.should ==
130
- 'three dogs, three chickens, two foxes, two geese, and a cat'
113
+ expect( array.en.conjunction ).
114
+ to eq( 'three dogs, three chickens, two foxes, two geese, and a cat' )
131
115
  end
132
116
 
133
117
  it "lists them separately if :combine is set to false" do
134
- @array.en.conjunction(:combine => false).should ==
118
+ expect( array.en.conjunction(:combine => false) ).to eq(
135
119
  'a cat, a dog, a fox, a dog, a chicken, a chicken, a Fox, a '\
136
- 'chicken, a goose, a Dog, and a goose'
120
+ 'chicken, a goose, a Dog, and a goose' )
137
121
  end
138
122
 
139
123
  it "doesn't combine the differently-cased ones if :casefold is turned off" do
140
- @array.en.conjunction(:casefold => false).should ==
124
+ expect( array.en.conjunction(:casefold => false) ).to eq(
141
125
  'three chickens, two dogs, two geese, a cat, a fox, a Fox, '\
142
- 'and a Dog'
126
+ 'and a Dog' )
143
127
  end
144
128
 
145
129
  it "combines and lists them with a non-specific count if :generalize is set" do
146
- @array.en.conjunction(:generalize => true).should ==
130
+ expect( array.en.conjunction(:generalize => true) ).to eq(
147
131
  'several dogs, several chickens, several foxes, several '\
148
- 'geese, and a cat'
132
+ 'geese, and a cat' )
149
133
  end
150
134
 
151
135
  end
@@ -1,17 +1,8 @@
1
1
  #!/usr/bin/env spec -cfs
2
2
 
3
- BEGIN {
4
- require 'pathname'
5
- basedir = Pathname.new( __FILE__ ).dirname.parent.parent.parent
6
-
7
- libdir = basedir + "lib"
8
-
9
- $LOAD_PATH.unshift( basedir.to_s ) unless $LOAD_PATH.include?( basedir.to_s )
10
- $LOAD_PATH.unshift( libdir.to_s ) unless $LOAD_PATH.include?( libdir.to_s )
11
- }
3
+ require_relative '../../helpers'
12
4
 
13
5
  require 'rspec'
14
- require 'spec/lib/helpers'
15
6
 
16
7
  require 'linguistics'
17
8
  require 'linguistics/en/infinitives'
@@ -20,498 +11,493 @@ require 'linguistics/en/infinitives'
20
11
  describe Linguistics::EN::Infinitives do
21
12
 
22
13
  before( :all ) do
23
- setup_logging( :fatal )
24
14
  Linguistics.use( :en, :proxy => true )
25
15
  include Linguistics::EN
26
16
  end
27
17
 
28
- after( :all ) do
29
- reset_logging()
30
- end
31
-
32
18
 
33
19
  describe "Infinitive object class" do
34
20
  it "compares as equal if its primary word is equal" do
35
- Linguistics::EN::Infinitives::Infinitive.new( 'basse', 'bass', 's', '2' ).should ==
36
- 'basse'
21
+ expect( Linguistics::EN::Infinitives::Infinitive.new('basse', 'bass', 's', '2') ).
22
+ to eq( 'basse' )
37
23
  end
38
24
 
39
25
  it "compares as equal if its secondary word is equal" do
40
- Linguistics::EN::Infinitives::Infinitive.new( 'basse', 'bass', 's', '2' ).should ==
41
- 'bass'
26
+ expect( Linguistics::EN::Infinitives::Infinitive.new('basse', 'bass', 's', '2') ).
27
+ to eq( 'bass' )
42
28
  end
43
29
 
44
30
  end
45
31
 
46
32
 
47
33
  it "uses rule 1 when calculating the infinitive of 'aches'" do
48
- "aches".en.infinitive.should == 'ache'
49
- "aches".en.infinitive.rule.should == '1'
34
+ expect( "aches".en.infinitive ).to eq( 'ache' )
35
+ expect( "aches".en.infinitive.rule ).to eq( '1' )
50
36
  end
51
37
 
52
38
  it "uses rule 2 when calculating the infinitive of 'vases'" do
53
- "vases".en.infinitive.should == 'vase'
54
- "vases".en.infinitive.rule.should == '2'
39
+ expect( "vases".en.infinitive ).to eq( 'vase' )
40
+ expect( "vases".en.infinitive.rule ).to eq( '2' )
55
41
  end
56
42
 
57
43
  it "uses rule 2 when calculating the infinitive of 'basses'" do
58
- "basses".en.infinitive.should == 'bass'
59
- "basses".en.infinitive.rule.should == '2'
44
+ expect( "basses".en.infinitive ).to eq( 'bass' )
45
+ expect( "basses".en.infinitive.rule ).to eq( '2' )
60
46
  end
61
47
 
62
48
  it "uses rule 3 when calculating the infinitive of 'axes'" do
63
- "axes".en.infinitive.should == 'axe'
64
- "axes".en.infinitive.rule.should == '3'
49
+ expect( "axes".en.infinitive ).to eq( 'axe' )
50
+ expect( "axes".en.infinitive.rule ).to eq( '3' )
65
51
  end
66
52
 
67
53
  it "uses rule 3 when calculating the infinitive of 'fixes'" do
68
- "fixes".en.infinitive.should == 'fix'
69
- "fixes".en.infinitive.rule.should == '3'
54
+ expect( "fixes".en.infinitive ).to eq( 'fix' )
55
+ expect( "fixes".en.infinitive.rule ).to eq( '3' )
70
56
  end
71
57
 
72
58
  it "uses rule 4 when calculating the infinitive of 'hazes'" do
73
- "hazes".en.infinitive.should == 'haze'
74
- "hazes".en.infinitive.rule.should == '4'
59
+ expect( "hazes".en.infinitive ).to eq( 'haze' )
60
+ expect( "hazes".en.infinitive.rule ).to eq( '4' )
75
61
  end
76
62
 
77
63
  it "uses rule 4 when calculating the infinitive of 'buzzes'" do
78
- "buzzes".en.infinitive.should == 'buzz'
79
- "buzzes".en.infinitive.rule.should == '4'
64
+ expect( "buzzes".en.infinitive ).to eq( 'buzz' )
65
+ expect( "buzzes".en.infinitive.rule ).to eq( '4' )
80
66
  end
81
67
 
82
68
  it "uses rule 6a when calculating the infinitive of 'caress'" do
83
- "caress".en.infinitive.should == 'caress'
84
- "caress".en.infinitive.rule.should == '6a'
69
+ expect( "caress".en.infinitive ).to eq( 'caress' )
70
+ expect( "caress".en.infinitive.rule ).to eq( '6a' )
85
71
  end
86
72
 
87
73
  it "uses rule 6b when calculating the infinitive of 'bans'" do
88
- "bans".en.infinitive.should == 'ban'
89
- "bans".en.infinitive.rule.should == '6b'
74
+ expect( "bans".en.infinitive ).to eq( 'ban' )
75
+ expect( "bans".en.infinitive.rule ).to eq( '6b' )
90
76
  end
91
77
 
92
78
  it "uses rule 7 when calculating the infinitive of 'Jones's'" do
93
- "Jones's".en.infinitive.should == 'Jones'
94
- "Jones's".en.infinitive.rule.should == '7'
79
+ expect( "Jones's".en.infinitive ).to eq( 'Jones' )
80
+ expect( "Jones's".en.infinitive.rule ).to eq( '7' )
95
81
  end
96
82
 
97
83
  it "uses rule 8 when calculating the infinitive of 'creater'" do
98
- "creater".en.infinitive.should == 'creater'
99
- "creater".en.infinitive.rule.should == '8'
84
+ expect( "creater".en.infinitive ).to eq( 'creater' )
85
+ expect( "creater".en.infinitive.rule ).to eq( '8' )
100
86
  end
101
87
 
102
88
  it "uses rule 9 when calculating the infinitive of 'reacter'" do
103
- "reacter".en.infinitive.should == 'reacter'
104
- "reacter".en.infinitive.rule.should == '9'
89
+ expect( "reacter".en.infinitive ).to eq( 'reacter' )
90
+ expect( "reacter".en.infinitive.rule ).to eq( '9' )
105
91
  end
106
92
 
107
93
  it "uses rule 10 when calculating the infinitive of 'copier'" do
108
- "copier".en.infinitive.should == 'copy'
109
- "copier".en.infinitive.rule.should == '10'
94
+ expect( "copier".en.infinitive ).to eq( 'copy' )
95
+ expect( "copier".en.infinitive.rule ).to eq( '10' )
110
96
  end
111
97
 
112
98
  it "uses rule 11 when calculating the infinitive of 'baker'" do
113
- "baker".en.infinitive.should == 'bake'
114
- "baker".en.infinitive.rule.should == '11'
99
+ expect( "baker".en.infinitive ).to eq( 'bake' )
100
+ expect( "baker".en.infinitive.rule ).to eq( '11' )
115
101
  end
116
102
 
117
103
  it "uses rule 11 when calculating the infinitive of 'smaller'" do
118
- "smaller".en.infinitive.should == 'small'
119
- "smaller".en.infinitive.rule.should == '11'
104
+ expect( "smaller".en.infinitive ).to eq( 'small' )
105
+ expect( "smaller".en.infinitive.rule ).to eq( '11' )
120
106
  end
121
107
 
122
108
  it "uses rule 12a when calculating the infinitive of 'curried'" do
123
- "curried".en.infinitive.should == 'curry'
124
- "curried".en.infinitive.rule.should == '12a'
109
+ expect( "curried".en.infinitive ).to eq( 'curry' )
110
+ expect( "curried".en.infinitive.rule ).to eq( '12a' )
125
111
  end
126
112
 
127
113
  it "uses rule 12b when calculating the infinitive of 'bored'" do
128
- "bored".en.infinitive.should == 'bore'
129
- "bored".en.infinitive.rule.should == '12b'
114
+ expect( "bored".en.infinitive ).to eq( 'bore' )
115
+ expect( "bored".en.infinitive.rule ).to eq( '12b' )
130
116
  end
131
117
 
132
118
  it "uses rule 12b when calculating the infinitive of 'seated'" do
133
- "seated".en.infinitive.should == 'seat'
134
- "seated".en.infinitive.rule.should == '12b'
119
+ expect( "seated".en.infinitive ).to eq( 'seat' )
120
+ expect( "seated".en.infinitive.rule ).to eq( '12b' )
135
121
  end
136
122
 
137
123
  it "uses rule 12b when calculating the infinitive of 'tipped'" do
138
- "tipped".en.infinitive.should == 'tip'
139
- "tipped".en.infinitive.rule.should == '12b'
124
+ expect( "tipped".en.infinitive ).to eq( 'tip' )
125
+ expect( "tipped".en.infinitive.rule ).to eq( '12b' )
140
126
  end
141
127
 
142
128
  it "uses rule 12b when calculating the infinitive of 'kitted'" do
143
- "kitted".en.infinitive.should == 'kit'
144
- "kitted".en.infinitive.rule.should == '12b'
129
+ expect( "kitted".en.infinitive ).to eq( 'kit' )
130
+ expect( "kitted".en.infinitive.rule ).to eq( '12b' )
145
131
  end
146
132
 
147
133
  it "uses rule 12b when calculating the infinitive of 'capped'" do
148
- "capped".en.infinitive.should == 'cap'
149
- "capped".en.infinitive.rule.should == '12b'
134
+ expect( "capped".en.infinitive ).to eq( 'cap' )
135
+ expect( "capped".en.infinitive.rule ).to eq( '12b' )
150
136
  end
151
137
 
152
138
  it "uses rule 12b when calculating the infinitive of 'chopped'" do
153
- "chopped".en.infinitive.should == 'chop'
154
- "chopped".en.infinitive.rule.should == '12b'
139
+ expect( "chopped".en.infinitive ).to eq( 'chop' )
140
+ expect( "chopped".en.infinitive.rule ).to eq( '12b' )
155
141
  end
156
142
 
157
143
  it "uses rule 13a when calculating the infinitive of 'flies'" do
158
- "flies".en.infinitive.should == 'fly'
159
- "flies".en.infinitive.rule.should == '13a'
144
+ expect( "flies".en.infinitive ).to eq( 'fly' )
145
+ expect( "flies".en.infinitive.rule ).to eq( '13a' )
160
146
  end
161
147
 
162
148
  it "uses rule 13b when calculating the infinitive of 'palates'" do
163
- "palates".en.infinitive.should == 'palate'
164
- "palates".en.infinitive.rule.should == '13b'
149
+ expect( "palates".en.infinitive ).to eq( 'palate' )
150
+ expect( "palates".en.infinitive.rule ).to eq( '13b' )
165
151
  end
166
152
 
167
153
  it "uses rule 14a when calculating the infinitive of 'liveliest'" do
168
- "liveliest".en.infinitive.should == 'lively'
169
- "liveliest".en.infinitive.rule.should == '14a'
154
+ expect( "liveliest".en.infinitive ).to eq( 'lively' )
155
+ expect( "liveliest".en.infinitive.rule ).to eq( '14a' )
170
156
  end
171
157
 
172
158
  it "uses rule 14b when calculating the infinitive of 'wisest'" do
173
- "wisest".en.infinitive.should == 'wise'
174
- "wisest".en.infinitive.rule.should == '14b'
159
+ expect( "wisest".en.infinitive ).to eq( 'wise' )
160
+ expect( "wisest".en.infinitive.rule ).to eq( '14b' )
175
161
  end
176
162
 
177
163
  it "uses rule 14b when calculating the infinitive of 'strongest'" do
178
- "strongest".en.infinitive.should == 'strong'
179
- "strongest".en.infinitive.rule.should == '14b'
164
+ expect( "strongest".en.infinitive ).to eq( 'strong' )
165
+ expect( "strongest".en.infinitive.rule ).to eq( '14b' )
180
166
  end
181
167
 
182
168
  it "uses rule 15 when calculating the infinitive of 'living'" do
183
- "living".en.infinitive.should == 'live'
184
- "living".en.infinitive.rule.should == '15'
169
+ expect( "living".en.infinitive ).to eq( 'live' )
170
+ expect( "living".en.infinitive.rule ).to eq( '15' )
185
171
  end
186
172
 
187
173
  it "uses rule 15 when calculating the infinitive of 'laughing'" do
188
- "laughing".en.infinitive.should == 'laugh'
189
- "laughing".en.infinitive.rule.should == '15'
174
+ expect( "laughing".en.infinitive ).to eq( 'laugh' )
175
+ expect( "laughing".en.infinitive.rule ).to eq( '15' )
190
176
  end
191
177
 
192
178
  it "uses rule 15 when calculating the infinitive of 'swaying'" do
193
- "swaying".en.infinitive.should == 'sway'
194
- "swaying".en.infinitive.rule.should == '15'
179
+ expect( "swaying".en.infinitive ).to eq( 'sway' )
180
+ expect( "swaying".en.infinitive.rule ).to eq( '15' )
195
181
  end
196
182
 
197
183
  it "uses rule 15 when calculating the infinitive of 'catching'" do
198
- "catching".en.infinitive.should == 'catch'
199
- "catching".en.infinitive.rule.should == '15'
184
+ expect( "catching".en.infinitive ).to eq( 'catch' )
185
+ expect( "catching".en.infinitive.rule ).to eq( '15' )
200
186
  end
201
187
 
202
188
  it "uses rule 15 when calculating the infinitive of 'smiling'" do
203
- "smiling".en.infinitive.should == 'smile'
204
- "smiling".en.infinitive.rule.should == '15'
189
+ expect( "smiling".en.infinitive ).to eq( 'smile' )
190
+ expect( "smiling".en.infinitive.rule ).to eq( '15' )
205
191
  end
206
192
 
207
193
  it "uses rule 15 when calculating the infinitive of 'swimming'" do
208
- "swimming".en.infinitive.should == 'swim'
209
- "swimming".en.infinitive.rule.should == '15'
194
+ expect( "swimming".en.infinitive ).to eq( 'swim' )
195
+ expect( "swimming".en.infinitive.rule ).to eq( '15' )
210
196
  end
211
197
 
212
198
  it "uses rule 15 when calculating the infinitive of 'running'" do
213
- "running".en.infinitive.should == 'run'
214
- "running".en.infinitive.rule.should == '15'
199
+ expect( "running".en.infinitive ).to eq( 'run' )
200
+ expect( "running".en.infinitive.rule ).to eq( '15' )
215
201
  end
216
202
 
217
203
  it "uses rule 15 when calculating the infinitive of 'floating'" do
218
- "floating".en.infinitive.should == 'float'
219
- "floating".en.infinitive.rule.should == '15'
204
+ expect( "floating".en.infinitive ).to eq( 'float' )
205
+ expect( "floating".en.infinitive.rule ).to eq( '15' )
220
206
  end
221
207
 
222
208
  it "uses rule 15 when calculating the infinitive of 'keyboarding'" do
223
- "keyboarding".en.infinitive.should == 'keyboard'
224
- "keyboarding".en.infinitive.rule.should == '15'
209
+ expect( "keyboarding".en.infinitive ).to eq( 'keyboard' )
210
+ expect( "keyboarding".en.infinitive.rule ).to eq( '15' )
225
211
  end
226
212
 
227
213
  it "uses rule 15 when calculating the infinitive of 'wrestling'" do
228
- "wrestling".en.infinitive.should == 'wrestle'
229
- "wrestling".en.infinitive.rule.should == '15'
214
+ expect( "wrestling".en.infinitive ).to eq( 'wrestle' )
215
+ expect( "wrestling".en.infinitive.rule ).to eq( '15' )
230
216
  end
231
217
 
232
218
  it "uses rule 15 when calculating the infinitive of 'traveling'" do
233
- "traveling".en.infinitive.should == 'travel'
234
- "traveling".en.infinitive.rule.should == '15'
219
+ expect( "traveling".en.infinitive ).to eq( 'travel' )
220
+ expect( "traveling".en.infinitive.rule ).to eq( '15' )
235
221
  end
236
222
 
237
223
  it "uses rule 15 when calculating the infinitive of 'traipsing'" do
238
- "traipsing".en.infinitive.should == 'traipse'
239
- "traipsing".en.infinitive.rule.should == '15'
224
+ expect( "traipsing".en.infinitive ).to eq( 'traipse' )
225
+ expect( "traipsing".en.infinitive.rule ).to eq( '15' )
240
226
  end
241
227
 
242
228
  it "uses rule 16 when calculating the infinitive of 'stylist'" do
243
- "stylist".en.infinitive.should == 'style'
244
- "stylist".en.infinitive.rule.should == '16'
229
+ expect( "stylist".en.infinitive ).to eq( 'style' )
230
+ expect( "stylist".en.infinitive.rule ).to eq( '16' )
245
231
  end
246
232
 
247
233
  it "uses rule 16 when calculating the infinitive of 'dentist'" do
248
- "dentist".en.infinitive.should == 'dent'
249
- "dentist".en.infinitive.rule.should == '16'
234
+ expect( "dentist".en.infinitive ).to eq( 'dent' )
235
+ expect( "dentist".en.infinitive.rule ).to eq( '16' )
250
236
  end
251
237
 
252
238
  it "uses rule 17 when calculating the infinitive of 'cubism'" do
253
- "cubism".en.infinitive.should == 'cube'
254
- "cubism".en.infinitive.rule.should == '17'
239
+ expect( "cubism".en.infinitive ).to eq( 'cube' )
240
+ expect( "cubism".en.infinitive.rule ).to eq( '17' )
255
241
  end
256
242
 
257
243
  it "uses rule 17 when calculating the infinitive of 'socialism'" do
258
- "socialism".en.infinitive.should == 'social'
259
- "socialism".en.infinitive.rule.should == '17'
244
+ expect( "socialism".en.infinitive ).to eq( 'social' )
245
+ expect( "socialism".en.infinitive.rule ).to eq( '17' )
260
246
  end
261
247
 
262
248
  it "uses rule 18 when calculating the infinitive of 'scarcity'" do
263
- "scarcity".en.infinitive.should == 'scarce'
264
- "scarcity".en.infinitive.rule.should == '18'
249
+ expect( "scarcity".en.infinitive ).to eq( 'scarce' )
250
+ expect( "scarcity".en.infinitive.rule ).to eq( '18' )
265
251
  end
266
252
 
267
253
  it "uses rule 18 when calculating the infinitive of 'rapidity'" do
268
- "rapidity".en.infinitive.should == 'rapid'
269
- "rapidity".en.infinitive.rule.should == '18'
254
+ expect( "rapidity".en.infinitive ).to eq( 'rapid' )
255
+ expect( "rapidity".en.infinitive.rule ).to eq( '18' )
270
256
  end
271
257
 
272
258
  it "uses rule 19 when calculating the infinitive of 'immunize'" do
273
- "immunize".en.infinitive.should == 'immune'
274
- "immunize".en.infinitive.rule.should == '19'
259
+ expect( "immunize".en.infinitive ).to eq( 'immune' )
260
+ expect( "immunize".en.infinitive.rule ).to eq( '19' )
275
261
  end
276
262
 
277
263
  it "uses rule 19 when calculating the infinitive of 'lionize'" do
278
- "lionize".en.infinitive.should == 'lion'
279
- "lionize".en.infinitive.rule.should == '19'
264
+ expect( "lionize".en.infinitive ).to eq( 'lion' )
265
+ expect( "lionize".en.infinitive.rule ).to eq( '19' )
280
266
  end
281
267
 
282
268
  it "uses rule 20c when calculating the infinitive of 'livable'" do
283
- "livable".en.infinitive.should == 'live'
284
- "livable".en.infinitive.rule.should == '20c'
269
+ expect( "livable".en.infinitive ).to eq( 'live' )
270
+ expect( "livable".en.infinitive.rule ).to eq( '20c' )
285
271
  end
286
272
 
287
273
  it "uses rule 20c when calculating the infinitive of 'portable'" do
288
- "portable".en.infinitive.should == 'port'
289
- "portable".en.infinitive.rule.should == '20c'
274
+ expect( "portable".en.infinitive ).to eq( 'port' )
275
+ expect( "portable".en.infinitive.rule ).to eq( '20c' )
290
276
  end
291
277
 
292
278
  it "uses rule 22 when calculating the infinitive of 'nobility'" do
293
- "nobility".en.infinitive.should == 'noble'
294
- "nobility".en.infinitive.rule.should == '22'
279
+ expect( "nobility".en.infinitive ).to eq( 'noble' )
280
+ expect( "nobility".en.infinitive.rule ).to eq( '22' )
295
281
  end
296
282
 
297
283
  it "uses rule 23 when calculating the infinitive of 'identifiable'" do
298
- "identifiable".en.infinitive.should == 'identify'
299
- "identifiable".en.infinitive.rule.should == '23'
284
+ expect( "identifiable".en.infinitive ).to eq( 'identify' )
285
+ expect( "identifiable".en.infinitive.rule ).to eq( '23' )
300
286
  end
301
287
 
302
288
  it "uses rule 24 when calculating the infinitive of 'psychologist'" do
303
- "psychologist".en.infinitive.should == 'psychology'
304
- "psychologist".en.infinitive.rule.should == '24'
289
+ expect( "psychologist".en.infinitive ).to eq( 'psychology' )
290
+ expect( "psychologist".en.infinitive.rule ).to eq( '24' )
305
291
  end
306
292
 
307
293
  it "uses rule 25 when calculating the infinitive of 'photographic'" do
308
- "photographic".en.infinitive.should == 'photography'
309
- "photographic".en.infinitive.rule.should == '25'
294
+ expect( "photographic".en.infinitive ).to eq( 'photography' )
295
+ expect( "photographic".en.infinitive.rule ).to eq( '25' )
310
296
  end
311
297
 
312
298
  it "uses rule 26 when calculating the infinitive of 'stylistic'" do
313
- "stylistic".en.infinitive.should == 'stylist'
314
- "stylistic".en.infinitive.rule.should == '26'
299
+ expect( "stylistic".en.infinitive ).to eq( 'stylist' )
300
+ expect( "stylistic".en.infinitive.rule ).to eq( '26' )
315
301
  end
316
302
 
317
303
  it "uses rule 27 when calculating the infinitive of 'martensitic'" do
318
- "martensitic".en.infinitive.should == 'martensite'
319
- "martensitic".en.infinitive.rule.should == '27'
304
+ expect( "martensitic".en.infinitive ).to eq( 'martensite' )
305
+ expect( "martensitic".en.infinitive.rule ).to eq( '27' )
320
306
  end
321
307
 
322
308
  it "uses rule 27 when calculating the infinitive of 'politic'" do
323
- "politic".en.infinitive.should == 'polite'
324
- "politic".en.infinitive.rule.should == '27'
309
+ expect( "politic".en.infinitive ).to eq( 'polite' )
310
+ expect( "politic".en.infinitive.rule ).to eq( '27' )
325
311
  end
326
312
 
327
313
  it "uses rule 28 when calculating the infinitive of 'ladylike'" do
328
- "ladylike".en.infinitive.should == 'lady'
329
- "ladylike".en.infinitive.rule.should == '28'
314
+ expect( "ladylike".en.infinitive ).to eq( 'lady' )
315
+ expect( "ladylike".en.infinitive.rule ).to eq( '28' )
330
316
  end
331
317
 
332
318
  it "uses rule 29 when calculating the infinitive of 'biologic'" do
333
- "biologic".en.infinitive.should == 'biology'
334
- "biologic".en.infinitive.rule.should == '29'
319
+ expect( "biologic".en.infinitive ).to eq( 'biology' )
320
+ expect( "biologic".en.infinitive.rule ).to eq( '29' )
335
321
  end
336
322
 
337
323
  it "uses rule 30 when calculating the infinitive of 'battlement'" do
338
- "battlement".en.infinitive.should == 'battle'
339
- "battlement".en.infinitive.rule.should == '30'
324
+ expect( "battlement".en.infinitive ).to eq( 'battle' )
325
+ expect( "battlement".en.infinitive.rule ).to eq( '30' )
340
326
  end
341
327
 
342
328
  it "uses rule 31 when calculating the infinitive of 'supplemental'" do
343
- "supplemental".en.infinitive.should == 'supplement'
344
- "supplemental".en.infinitive.rule.should == '31'
329
+ expect( "supplemental".en.infinitive ).to eq( 'supplement' )
330
+ expect( "supplemental".en.infinitive.rule ).to eq( '31' )
345
331
  end
346
332
 
347
333
  it "uses rule 32 when calculating the infinitive of 'thermometry'" do
348
- "thermometry".en.infinitive.should == 'thermometer'
349
- "thermometry".en.infinitive.rule.should == '32'
334
+ expect( "thermometry".en.infinitive ).to eq( 'thermometer' )
335
+ expect( "thermometry".en.infinitive.rule ).to eq( '32' )
350
336
  end
351
337
 
352
338
  it "uses rule 33 when calculating the infinitive of 'inadvertence'" do
353
- "inadvertence".en.infinitive.should == 'inadvertent'
354
- "inadvertence".en.infinitive.rule.should == '33'
339
+ expect( "inadvertence".en.infinitive ).to eq( 'inadvertent' )
340
+ expect( "inadvertence".en.infinitive.rule ).to eq( '33' )
355
341
  end
356
342
 
357
343
  it "uses rule 34 when calculating the infinitive of 'potency'" do
358
- "potency".en.infinitive.should == 'potent'
359
- "potency".en.infinitive.rule.should == '34'
344
+ expect( "potency".en.infinitive ).to eq( 'potent' )
345
+ expect( "potency".en.infinitive.rule ).to eq( '34' )
360
346
  end
361
347
 
362
348
  it "uses rule 35 when calculating the infinitive of 'discipleship'" do
363
- "discipleship".en.infinitive.should == 'disciple'
364
- "discipleship".en.infinitive.rule.should == '35'
349
+ expect( "discipleship".en.infinitive ).to eq( 'disciple' )
350
+ expect( "discipleship".en.infinitive.rule ).to eq( '35' )
365
351
  end
366
352
 
367
353
  it "uses rule 36 when calculating the infinitive of 'mystical'" do
368
- "mystical".en.infinitive.should == 'mystic'
369
- "mystical".en.infinitive.rule.should == '36'
354
+ expect( "mystical".en.infinitive ).to eq( 'mystic' )
355
+ expect( "mystical".en.infinitive.rule ).to eq( '36' )
370
356
  end
371
357
 
372
358
  it "uses rule 37 when calculating the infinitive of 'regional'" do
373
- "regional".en.infinitive.should == 'region'
374
- "regional".en.infinitive.rule.should == '37'
359
+ expect( "regional".en.infinitive ).to eq( 'region' )
360
+ expect( "regional".en.infinitive.rule ).to eq( '37' )
375
361
  end
376
362
 
377
363
  it "uses rule 37 when calculating the infinitive of 'national'" do
378
- "national".en.infinitive.should == 'nation'
379
- "national".en.infinitive.rule.should == '37'
364
+ expect( "national".en.infinitive ).to eq( 'nation' )
365
+ expect( "national".en.infinitive.rule ).to eq( '37' )
380
366
  end
381
367
 
382
368
  it "uses rule 38 when calculating the infinitive of 'horribly'" do
383
- "horribly".en.infinitive.should == 'horrible'
384
- "horribly".en.infinitive.rule.should == '38'
369
+ expect( "horribly".en.infinitive ).to eq( 'horrible' )
370
+ expect( "horribly".en.infinitive.rule ).to eq( '38' )
385
371
  end
386
372
 
387
373
  it "uses rule 39 when calculating the infinitive of 'scantily'" do
388
- "scantily".en.infinitive.should == 'scanty'
389
- "scantily".en.infinitive.rule.should == '39'
374
+ expect( "scantily".en.infinitive ).to eq( 'scanty' )
375
+ expect( "scantily".en.infinitive.rule ).to eq( '39' )
390
376
  end
391
377
 
392
378
  it "uses rule 40 when calculating the infinitive of 'partly'" do
393
- "partly".en.infinitive.should == 'part'
394
- "partly".en.infinitive.rule.should == '40'
379
+ expect( "partly".en.infinitive ).to eq( 'part' )
380
+ expect( "partly".en.infinitive.rule ).to eq( '40' )
395
381
  end
396
382
 
397
383
  it "uses rule 41a when calculating the infinitive of 'dutiful'" do
398
- "dutiful".en.infinitive.should == 'duty'
399
- "dutiful".en.infinitive.rule.should == '41a'
384
+ expect( "dutiful".en.infinitive ).to eq( 'duty' )
385
+ expect( "dutiful".en.infinitive.rule ).to eq( '41a' )
400
386
  end
401
387
 
402
388
  it "uses rule 41b when calculating the infinitive of 'harmful'" do
403
- "harmful".en.infinitive.should == 'harm'
404
- "harmful".en.infinitive.rule.should == '41b'
389
+ expect( "harmful".en.infinitive ).to eq( 'harm' )
390
+ expect( "harmful".en.infinitive.rule ).to eq( '41b' )
405
391
  end
406
392
 
407
393
  it "uses rule 42a when calculating the infinitive of 'likelihood'" do
408
- "likelihood".en.infinitive.should == 'likely'
409
- "likelihood".en.infinitive.rule.should == '42a'
394
+ expect( "likelihood".en.infinitive ).to eq( 'likely' )
395
+ expect( "likelihood".en.infinitive.rule ).to eq( '42a' )
410
396
  end
411
397
 
412
398
  it "uses rule 42b when calculating the infinitive of 'neighborhood'" do
413
- "neighborhood".en.infinitive.should == 'neighbor'
414
- "neighborhood".en.infinitive.rule.should == '42b'
399
+ expect( "neighborhood".en.infinitive ).to eq( 'neighbor' )
400
+ expect( "neighborhood".en.infinitive.rule ).to eq( '42b' )
415
401
  end
416
402
 
417
403
  it "uses rule 42b when calculating the infinitive of 'neighbourhood'" do
418
- "neighbourhood".en.infinitive.should == 'neighbour'
419
- "neighbourhood".en.infinitive.rule.should == '42b'
404
+ expect( "neighbourhood".en.infinitive ).to eq( 'neighbour' )
405
+ expect( "neighbourhood".en.infinitive.rule ).to eq( '42b' )
420
406
  end
421
407
 
422
408
  it "uses rule 43a when calculating the infinitive of 'penniless'" do
423
- "penniless".en.infinitive.should == 'penny'
424
- "penniless".en.infinitive.rule.should == '43a'
409
+ expect( "penniless".en.infinitive ).to eq( 'penny' )
410
+ expect( "penniless".en.infinitive.rule ).to eq( '43a' )
425
411
  end
426
412
 
427
413
  it "uses rule 43b when calculating the infinitive of 'listless'" do
428
- "listless".en.infinitive.should == 'list'
429
- "listless".en.infinitive.rule.should == '43b'
414
+ expect( "listless".en.infinitive ).to eq( 'list' )
415
+ expect( "listless".en.infinitive.rule ).to eq( '43b' )
430
416
  end
431
417
 
432
418
  it "uses rule 44a when calculating the infinitive of 'heartiness'" do
433
- "heartiness".en.infinitive.should == 'hearty'
434
- "heartiness".en.infinitive.rule.should == '44a'
419
+ expect( "heartiness".en.infinitive ).to eq( 'hearty' )
420
+ expect( "heartiness".en.infinitive.rule ).to eq( '44a' )
435
421
  end
436
422
 
437
423
  it "uses rule 44b when calculating the infinitive of 'coolness'" do
438
- "coolness".en.infinitive.should == 'cool'
439
- "coolness".en.infinitive.rule.should == '44b'
424
+ expect( "coolness".en.infinitive ).to eq( 'cool' )
425
+ expect( "coolness".en.infinitive.rule ).to eq( '44b' )
440
426
  end
441
427
 
442
428
  it "uses rule 45 when calculating the infinitive of 'specification'" do
443
- "specification".en.infinitive.should == 'specify'
444
- "specification".en.infinitive.rule.should == '45'
429
+ expect( "specification".en.infinitive ).to eq( 'specify' )
430
+ expect( "specification".en.infinitive.rule ).to eq( '45' )
445
431
  end
446
432
 
447
433
  it "uses rule 46 when calculating the infinitive of 'rationalization'" do
448
- "rationalization".en.infinitive.should == 'rationalize'
449
- "rationalization".en.infinitive.rule.should == '46'
434
+ expect( "rationalization".en.infinitive ).to eq( 'rationalize' )
435
+ expect( "rationalization".en.infinitive.rule ).to eq( '46' )
450
436
  end
451
437
 
452
438
  it "uses rule 47 when calculating the infinitive of 'detection'" do
453
- "detection".en.infinitive.should == 'detect'
454
- "detection".en.infinitive.rule.should == '47'
439
+ expect( "detection".en.infinitive ).to eq( 'detect' )
440
+ expect( "detection".en.infinitive.rule ).to eq( '47' )
455
441
  end
456
442
 
457
443
  it "uses rule 48 when calculating the infinitive of 'exertion'" do
458
- "exertion".en.infinitive.should == 'exert'
459
- "exertion".en.infinitive.rule.should == '48'
444
+ expect( "exertion".en.infinitive ).to eq( 'exert' )
445
+ expect( "exertion".en.infinitive.rule ).to eq( '48' )
460
446
  end
461
447
 
462
448
  it "uses rule 49 when calculating the infinitive of 'creation'" do
463
- "creation".en.infinitive.should == 'create'
464
- "creation".en.infinitive.rule.should == '49'
449
+ expect( "creation".en.infinitive ).to eq( 'create' )
450
+ expect( "creation".en.infinitive.rule ).to eq( '49' )
465
451
  end
466
452
 
467
453
  it "uses rule 50 when calculating the infinitive of 'creator'" do
468
- "creator".en.infinitive.should == 'create'
469
- "creator".en.infinitive.rule.should == '50'
454
+ expect( "creator".en.infinitive ).to eq( 'create' )
455
+ expect( "creator".en.infinitive.rule ).to eq( '50' )
470
456
  end
471
457
 
472
458
  it "uses rule 51 when calculating the infinitive of 'detector'" do
473
- "detector".en.infinitive.should == 'detect'
474
- "detector".en.infinitive.rule.should == '51'
459
+ expect( "detector".en.infinitive ).to eq( 'detect' )
460
+ expect( "detector".en.infinitive.rule ).to eq( '51' )
475
461
  end
476
462
 
477
463
  it "uses rule 52 when calculating the infinitive of 'creative'" do
478
- "creative".en.infinitive.should == 'creation'
479
- "creative".en.infinitive.rule.should == '52'
464
+ expect( "creative".en.infinitive ).to eq( 'creation' )
465
+ expect( "creative".en.infinitive.rule ).to eq( '52' )
480
466
  end
481
467
 
482
468
  it "uses rule 52 when calculating the infinitive of 'decisive'" do
483
- "decisive".en.infinitive.should == 'decision'
484
- "decisive".en.infinitive.rule.should == '52'
469
+ expect( "decisive".en.infinitive ).to eq( 'decision' )
470
+ expect( "decisive".en.infinitive.rule ).to eq( '52' )
485
471
  end
486
472
 
487
473
  it "uses rule 53 when calculating the infinitive of 'Australian'" do
488
- "Australian".en.infinitive.should == 'Australia'
489
- "Australian".en.infinitive.rule.should == '53'
474
+ expect( "Australian".en.infinitive ).to eq( 'Australia' )
475
+ expect( "Australian".en.infinitive.rule ).to eq( '53' )
490
476
  end
491
477
 
492
478
  it "uses rule 54 when calculating the infinitive of 'Jeffersonian'" do
493
- "Jeffersonian".en.infinitive.should == 'Jefferson'
494
- "Jeffersonian".en.infinitive.rule.should == '54'
479
+ expect( "Jeffersonian".en.infinitive ).to eq( 'Jefferson' )
480
+ expect( "Jeffersonian".en.infinitive.rule ).to eq( '54' )
495
481
  end
496
482
 
497
483
  it "uses irregular rule when calculating the infinitive of 'rove'" do
498
- "rove".en.infinitive.should == 'reeve'
499
- "rove".en.infinitive.rule.should == 'irregular'
484
+ expect( "rove".en.infinitive ).to eq( 'reeve' )
485
+ expect( "rove".en.infinitive.rule ).to eq( 'irregular' )
500
486
  end
501
487
 
502
488
  it "uses irregular rule when calculating the infinitive of 'dove'" do
503
- "dove".en.infinitive.should == 'dive'
504
- "dove".en.infinitive.rule.should == 'irregular'
489
+ expect( "dove".en.infinitive ).to eq( 'dive' )
490
+ expect( "dove".en.infinitive.rule ).to eq( 'irregular' )
505
491
  end
506
492
 
507
493
  it "uses irregular rule when calculating the infinitive of 'snuck'" do
508
- "snuck".en.infinitive.should == 'sneak'
509
- "snuck".en.infinitive.rule.should == 'irregular'
494
+ expect( "snuck".en.infinitive ).to eq( 'sneak' )
495
+ expect( "snuck".en.infinitive.rule ).to eq( 'irregular' )
510
496
  end
511
497
 
512
498
  it "uses irregular rule when calculating the infinitive of 'wot'" do
513
- "wot".en.infinitive.should == 'wit'
514
- "wot".en.infinitive.rule.should == 'irregular'
499
+ expect( "wot".en.infinitive ).to eq( 'wit' )
500
+ expect( "wot".en.infinitive.rule ).to eq( 'irregular' )
515
501
  end
516
502
 
517
503
  end