linguistics 2.0.2 → 2.0.3

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