LittleWeasel 3.0.4 → 5.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (153) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/codeql-analysis.yml +72 -0
  3. data/.gitignore +19 -17
  4. data/.reek.yml +17 -0
  5. data/.rspec +4 -2
  6. data/.rubocop.yml +187 -0
  7. data/.ruby-version +1 -1
  8. data/.yardopts +2 -0
  9. data/CHANGELOG.md +21 -1
  10. data/Gemfile +3 -1
  11. data/Gemfile.lock +114 -0
  12. data/Jenkinsfile +20 -0
  13. data/LittleWeasel.gemspec +31 -18
  14. data/README.md +408 -42
  15. data/Rakefile +296 -3
  16. data/lib/LittleWeasel/block_results.rb +81 -0
  17. data/lib/LittleWeasel/configure.rb +98 -0
  18. data/lib/LittleWeasel/dictionary.rb +125 -0
  19. data/lib/LittleWeasel/dictionary_key.rb +48 -0
  20. data/lib/LittleWeasel/dictionary_manager.rb +91 -0
  21. data/lib/LittleWeasel/errors/dictionary_file_already_loaded_error.rb +9 -0
  22. data/lib/LittleWeasel/errors/dictionary_file_empty_error.rb +8 -0
  23. data/lib/LittleWeasel/errors/dictionary_file_not_found_error.rb +8 -0
  24. data/lib/LittleWeasel/errors/dictionary_file_too_large_error.rb +16 -0
  25. data/lib/LittleWeasel/errors/language_required_error.rb +8 -0
  26. data/lib/LittleWeasel/errors/must_override_error.rb +8 -0
  27. data/lib/LittleWeasel/filters/en_us/currency_filter.rb +19 -0
  28. data/lib/LittleWeasel/filters/en_us/numeric_filter.rb +19 -0
  29. data/lib/LittleWeasel/filters/en_us/single_character_word_filter.rb +21 -0
  30. data/lib/LittleWeasel/filters/word_filter.rb +59 -0
  31. data/lib/LittleWeasel/filters/word_filter_managable.rb +80 -0
  32. data/lib/LittleWeasel/filters/word_filter_validatable.rb +31 -0
  33. data/lib/LittleWeasel/filters/word_filterable.rb +19 -0
  34. data/lib/LittleWeasel/filters/word_filters_validatable.rb +29 -0
  35. data/lib/LittleWeasel/metadata/dictionary_metadata.rb +145 -0
  36. data/lib/LittleWeasel/metadata/invalid_words_metadata.rb +134 -0
  37. data/lib/LittleWeasel/metadata/invalid_words_service_results.rb +45 -0
  38. data/lib/LittleWeasel/metadata/metadata_observable_validatable.rb +22 -0
  39. data/lib/LittleWeasel/metadata/metadata_observerable.rb +90 -0
  40. data/lib/LittleWeasel/metadata/metadatable.rb +134 -0
  41. data/lib/LittleWeasel/modules/class_name_to_symbol.rb +26 -0
  42. data/lib/LittleWeasel/modules/configurable.rb +26 -0
  43. data/lib/LittleWeasel/modules/deep_dup.rb +11 -0
  44. data/lib/LittleWeasel/modules/dictionary_cache_keys.rb +34 -0
  45. data/lib/LittleWeasel/modules/dictionary_cache_servicable.rb +26 -0
  46. data/lib/LittleWeasel/modules/dictionary_cache_validatable.rb +18 -0
  47. data/lib/LittleWeasel/modules/dictionary_creator_servicable.rb +27 -0
  48. data/lib/LittleWeasel/modules/dictionary_file_loader.rb +67 -0
  49. data/lib/LittleWeasel/modules/dictionary_key_validatable.rb +17 -0
  50. data/lib/LittleWeasel/modules/dictionary_keyable.rb +24 -0
  51. data/lib/LittleWeasel/modules/dictionary_metadata_servicable.rb +29 -0
  52. data/lib/LittleWeasel/modules/dictionary_metadata_validatable.rb +15 -0
  53. data/lib/LittleWeasel/modules/dictionary_source_validatable.rb +15 -0
  54. data/lib/LittleWeasel/modules/dictionary_sourceable.rb +86 -0
  55. data/lib/LittleWeasel/modules/dictionary_validatable.rb +18 -0
  56. data/lib/LittleWeasel/modules/language.rb +24 -0
  57. data/lib/LittleWeasel/modules/language_validatable.rb +14 -0
  58. data/lib/LittleWeasel/modules/locale.rb +23 -0
  59. data/lib/LittleWeasel/modules/order_validatable.rb +16 -0
  60. data/lib/LittleWeasel/modules/orderable.rb +17 -0
  61. data/lib/LittleWeasel/modules/region.rb +24 -0
  62. data/lib/LittleWeasel/modules/region_validatable.rb +14 -0
  63. data/lib/LittleWeasel/modules/tag_validatable.rb +14 -0
  64. data/lib/LittleWeasel/modules/taggable.rb +31 -0
  65. data/lib/LittleWeasel/modules/word_results_validatable.rb +28 -0
  66. data/lib/LittleWeasel/preprocessors/en_us/capitalize_preprocessor.rb +22 -0
  67. data/lib/LittleWeasel/preprocessors/preprocessed_word.rb +29 -0
  68. data/lib/LittleWeasel/preprocessors/preprocessed_word_validatable.rb +56 -0
  69. data/lib/LittleWeasel/preprocessors/preprocessed_words.rb +59 -0
  70. data/lib/LittleWeasel/preprocessors/preprocessed_words_validatable.rb +28 -0
  71. data/lib/LittleWeasel/preprocessors/word_preprocessable.rb +19 -0
  72. data/lib/LittleWeasel/preprocessors/word_preprocessor.rb +123 -0
  73. data/lib/LittleWeasel/preprocessors/word_preprocessor_managable.rb +114 -0
  74. data/lib/LittleWeasel/preprocessors/word_preprocessor_validatable.rb +40 -0
  75. data/lib/LittleWeasel/preprocessors/word_preprocessors_validatable.rb +24 -0
  76. data/lib/LittleWeasel/services/dictionary_cache_service.rb +211 -0
  77. data/lib/LittleWeasel/services/dictionary_creator_service.rb +94 -0
  78. data/lib/LittleWeasel/services/dictionary_file_loader_service.rb +37 -0
  79. data/lib/LittleWeasel/services/dictionary_killer_service.rb +35 -0
  80. data/lib/LittleWeasel/services/dictionary_metadata_service.rb +116 -0
  81. data/lib/LittleWeasel/services/invalid_words_service.rb +59 -0
  82. data/lib/LittleWeasel/version.rb +3 -1
  83. data/lib/LittleWeasel/word_results.rb +146 -0
  84. data/lib/LittleWeasel.rb +72 -186
  85. data/spec/factories/dictionary.rb +43 -0
  86. data/spec/factories/dictionary_cache_service.rb +95 -0
  87. data/spec/factories/dictionary_creator_service.rb +16 -0
  88. data/spec/factories/dictionary_file_loader_service.rb +13 -0
  89. data/spec/factories/dictionary_hash.rb +39 -0
  90. data/spec/factories/dictionary_key.rb +14 -0
  91. data/spec/factories/dictionary_killer_service.rb +14 -0
  92. data/spec/factories/dictionary_manager.rb +10 -0
  93. data/spec/factories/dictionary_metadata.rb +16 -0
  94. data/spec/factories/dictionary_metadata_service.rb +16 -0
  95. data/spec/factories/numeric_filter.rb +12 -0
  96. data/spec/factories/preprocessed_word.rb +16 -0
  97. data/spec/factories/preprocessed_words.rb +41 -0
  98. data/spec/factories/single_character_word_filter.rb +12 -0
  99. data/spec/factories/word_results.rb +16 -0
  100. data/spec/lib/LittleWeasel/block_results_spec.rb +248 -0
  101. data/spec/lib/LittleWeasel/configure_spec.rb +74 -0
  102. data/spec/lib/LittleWeasel/dictionary_key_spec.rb +118 -0
  103. data/spec/lib/LittleWeasel/dictionary_manager_spec.rb +166 -0
  104. data/spec/lib/LittleWeasel/dictionary_spec.rb +289 -0
  105. data/spec/lib/LittleWeasel/filters/en_us/currency_filter_spec.rb +80 -0
  106. data/spec/lib/LittleWeasel/filters/en_us/numeric_filter_spec.rb +66 -0
  107. data/spec/lib/LittleWeasel/filters/en_us/single_character_word_filter_spec.rb +58 -0
  108. data/spec/lib/LittleWeasel/filters/word_filter_managable_spec.rb +180 -0
  109. data/spec/lib/LittleWeasel/filters/word_filter_spec.rb +151 -0
  110. data/spec/lib/LittleWeasel/filters/word_filter_validatable_spec.rb +94 -0
  111. data/spec/lib/LittleWeasel/filters/word_filters_validatable_spec.rb +48 -0
  112. data/spec/lib/LittleWeasel/integraton_tests/dictionary_integration_spec.rb +201 -0
  113. data/spec/lib/LittleWeasel/metadata/dictionary_creator_servicable_spec.rb +54 -0
  114. data/spec/lib/LittleWeasel/metadata/dictionary_metadata_spec.rb +209 -0
  115. data/spec/lib/LittleWeasel/metadata/invalid_words_metadata_spec.rb +155 -0
  116. data/spec/lib/LittleWeasel/metadata/metadata_observerable_spec.rb +31 -0
  117. data/spec/lib/LittleWeasel/metadata/metadatable_spec.rb +35 -0
  118. data/spec/lib/LittleWeasel/modules/class_name_to_symbol_spec.rb +21 -0
  119. data/spec/lib/LittleWeasel/modules/dictionary_file_loader_spec.rb +125 -0
  120. data/spec/lib/LittleWeasel/modules/dictionary_sourceable_spec.rb +81 -0
  121. data/spec/lib/LittleWeasel/modules/language_spec.rb +112 -0
  122. data/spec/lib/LittleWeasel/modules/locale_spec.rb +95 -0
  123. data/spec/lib/LittleWeasel/modules/region_spec.rb +112 -0
  124. data/spec/lib/LittleWeasel/preprocessors/en_us/capitalize_preprocessor_spec.rb +34 -0
  125. data/spec/lib/LittleWeasel/preprocessors/preprocessed_word_spec.rb +105 -0
  126. data/spec/lib/LittleWeasel/preprocessors/preprocessed_word_validatable_spec.rb +143 -0
  127. data/spec/lib/LittleWeasel/preprocessors/preprocessed_words_spec.rb +77 -0
  128. data/spec/lib/LittleWeasel/preprocessors/preprocessed_words_validatable_spec.rb +58 -0
  129. data/spec/lib/LittleWeasel/preprocessors/word_preprocessor_managable_spec.rb +242 -0
  130. data/spec/lib/LittleWeasel/preprocessors/word_preprocessor_spec.rb +218 -0
  131. data/spec/lib/LittleWeasel/preprocessors/word_preprocessor_validatable_spec.rb +109 -0
  132. data/spec/lib/LittleWeasel/preprocessors/word_preprocessors_validatable_spec.rb +49 -0
  133. data/spec/lib/LittleWeasel/services/dictionary_cache_service_spec.rb +444 -0
  134. data/spec/lib/LittleWeasel/services/dictionary_creator_service_spec.rb +119 -0
  135. data/spec/lib/LittleWeasel/services/dictionary_file_loader_service_spec.rb +71 -0
  136. data/spec/lib/LittleWeasel/services/dictionary_metadata_service_spec.rb +279 -0
  137. data/spec/lib/LittleWeasel/word_results_spec.rb +275 -0
  138. data/spec/lib/LittleWeasel/workflow/workflow_spec.rb +20 -0
  139. data/spec/spec_helper.rb +117 -6
  140. data/spec/support/factory_bot.rb +15 -0
  141. data/spec/support/file_helpers.rb +46 -0
  142. data/spec/support/files/empty-dictionary.txt +0 -0
  143. data/{lib/dictionary → spec/support/files/en-US-big.txt} +262156 -31488
  144. data/spec/support/files/en-US-tagged.txt +26 -0
  145. data/spec/support/files/en-US.txt +26 -0
  146. data/spec/support/files/en.txt +26 -0
  147. data/spec/support/files/es-ES.txt +27 -0
  148. data/spec/support/files/es.txt +27 -0
  149. data/spec/support/general_helpers.rb +68 -0
  150. data/spec/support/shared_contexts.rb +107 -0
  151. data/spec/support/shared_examples.rb +105 -0
  152. metadata +418 -70
  153. data/spec/checker/checker_spec.rb +0 -286
metadata CHANGED
@@ -1,176 +1,524 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: LittleWeasel
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.4
4
+ version: 5.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gene M. Angelo, Jr.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-01 00:00:00.000000000 Z
11
+ date: 2022-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '4.1'
20
- - - '>='
19
+ version: '6.1'
20
+ - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 4.1.1
22
+ version: 6.1.3.2
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
- - - ~>
27
+ - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '4.1'
30
- - - '>='
29
+ version: '6.1'
30
+ - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 4.1.1
32
+ version: 6.1.3.2
33
+ - !ruby/object:Gem::Dependency
34
+ name: benchmark-ips
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '2.3'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '2.3'
33
47
  - !ruby/object:Gem::Dependency
34
48
  name: bundler
35
49
  requirement: !ruby/object:Gem::Requirement
36
50
  requirements:
37
- - - ~>
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '2.2'
54
+ - - ">="
38
55
  - !ruby/object:Gem::Version
39
- version: '1.3'
56
+ version: 2.2.17
40
57
  type: :development
41
58
  prerelease: false
42
59
  version_requirements: !ruby/object:Gem::Requirement
43
60
  requirements:
44
- - - ~>
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '2.2'
64
+ - - ">="
45
65
  - !ruby/object:Gem::Version
46
- version: '1.3'
66
+ version: 2.2.17
67
+ - !ruby/object:Gem::Dependency
68
+ name: factory_bot
69
+ requirement: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: '6.2'
74
+ type: :development
75
+ prerelease: false
76
+ version_requirements: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: '6.2'
81
+ - !ruby/object:Gem::Dependency
82
+ name: pry-byebug
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '3.9'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '3.9'
47
95
  - !ruby/object:Gem::Dependency
48
96
  name: rake
49
97
  requirement: !ruby/object:Gem::Requirement
50
98
  requirements:
51
- - - ~>
99
+ - - "~>"
52
100
  - !ruby/object:Gem::Version
53
- version: '0'
101
+ version: '12.3'
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: 12.3.3
54
105
  type: :development
55
106
  prerelease: false
56
107
  version_requirements: !ruby/object:Gem::Requirement
57
108
  requirements:
58
- - - ~>
109
+ - - "~>"
110
+ - !ruby/object:Gem::Version
111
+ version: '12.3'
112
+ - - ">="
59
113
  - !ruby/object:Gem::Version
60
- version: '0'
114
+ version: 12.3.3
61
115
  - !ruby/object:Gem::Dependency
62
- name: rspec
116
+ name: redcarpet
63
117
  requirement: !ruby/object:Gem::Requirement
64
118
  requirements:
65
- - - ~>
119
+ - - "~>"
66
120
  - !ruby/object:Gem::Version
67
- version: '3.0'
68
- - - '>='
121
+ version: '3.5'
122
+ - - ">="
69
123
  - !ruby/object:Gem::Version
70
- version: 3.0.0
124
+ version: 3.5.1
71
125
  type: :development
72
126
  prerelease: false
73
127
  version_requirements: !ruby/object:Gem::Requirement
74
128
  requirements:
75
- - - ~>
129
+ - - "~>"
76
130
  - !ruby/object:Gem::Version
77
- version: '3.0'
78
- - - '>='
131
+ version: '3.5'
132
+ - - ">="
79
133
  - !ruby/object:Gem::Version
80
- version: 3.0.0
134
+ version: 3.5.1
81
135
  - !ruby/object:Gem::Dependency
82
- name: yard
136
+ name: reek
83
137
  requirement: !ruby/object:Gem::Requirement
84
138
  requirements:
85
- - - '='
139
+ - - "~>"
140
+ - !ruby/object:Gem::Version
141
+ version: '6.0'
142
+ - - ">="
86
143
  - !ruby/object:Gem::Version
87
- version: 0.8.6.1
144
+ version: 6.0.4
88
145
  type: :development
89
146
  prerelease: false
90
147
  version_requirements: !ruby/object:Gem::Requirement
91
148
  requirements:
92
- - - '='
149
+ - - "~>"
93
150
  - !ruby/object:Gem::Version
94
- version: 0.8.6.1
151
+ version: '6.0'
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ version: 6.0.4
95
155
  - !ruby/object:Gem::Dependency
96
- name: redcarpet
156
+ name: rspec
97
157
  requirement: !ruby/object:Gem::Requirement
98
158
  requirements:
99
- - - ~>
159
+ - - "~>"
100
160
  - !ruby/object:Gem::Version
101
- version: '2.3'
102
- - - '>='
161
+ version: '3.10'
162
+ type: :development
163
+ prerelease: false
164
+ version_requirements: !ruby/object:Gem::Requirement
165
+ requirements:
166
+ - - "~>"
167
+ - !ruby/object:Gem::Version
168
+ version: '3.10'
169
+ - !ruby/object:Gem::Dependency
170
+ name: rubocop
171
+ requirement: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - "~>"
103
174
  - !ruby/object:Gem::Version
104
- version: 2.3.0
175
+ version: 1.9.1
105
176
  type: :development
106
177
  prerelease: false
107
178
  version_requirements: !ruby/object:Gem::Requirement
108
179
  requirements:
109
- - - ~>
180
+ - - "~>"
181
+ - !ruby/object:Gem::Version
182
+ version: 1.9.1
183
+ - !ruby/object:Gem::Dependency
184
+ name: rubocop-performance
185
+ requirement: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - "~>"
188
+ - !ruby/object:Gem::Version
189
+ version: '1.11'
190
+ - - ">="
191
+ - !ruby/object:Gem::Version
192
+ version: 1.11.3
193
+ type: :development
194
+ prerelease: false
195
+ version_requirements: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - "~>"
198
+ - !ruby/object:Gem::Version
199
+ version: '1.11'
200
+ - - ">="
201
+ - !ruby/object:Gem::Version
202
+ version: 1.11.3
203
+ - !ruby/object:Gem::Dependency
204
+ name: rubocop-rspec
205
+ requirement: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - "~>"
208
+ - !ruby/object:Gem::Version
209
+ version: '2.3'
210
+ type: :development
211
+ prerelease: false
212
+ version_requirements: !ruby/object:Gem::Requirement
213
+ requirements:
214
+ - - "~>"
110
215
  - !ruby/object:Gem::Version
111
216
  version: '2.3'
112
- - - '>='
217
+ - !ruby/object:Gem::Dependency
218
+ name: simplecov
219
+ requirement: !ruby/object:Gem::Requirement
220
+ requirements:
221
+ - - "~>"
113
222
  - !ruby/object:Gem::Version
114
- version: 2.3.0
115
- description: Simple spellchecker for single, or multiple word blocks.
223
+ version: 0.21.2
224
+ type: :development
225
+ prerelease: false
226
+ version_requirements: !ruby/object:Gem::Requirement
227
+ requirements:
228
+ - - "~>"
229
+ - !ruby/object:Gem::Version
230
+ version: 0.21.2
231
+ - !ruby/object:Gem::Dependency
232
+ name: webrick
233
+ requirement: !ruby/object:Gem::Requirement
234
+ requirements:
235
+ - - "~>"
236
+ - !ruby/object:Gem::Version
237
+ version: '1.7'
238
+ type: :development
239
+ prerelease: false
240
+ version_requirements: !ruby/object:Gem::Requirement
241
+ requirements:
242
+ - - "~>"
243
+ - !ruby/object:Gem::Version
244
+ version: '1.7'
245
+ - !ruby/object:Gem::Dependency
246
+ name: yard
247
+ requirement: !ruby/object:Gem::Requirement
248
+ requirements:
249
+ - - "~>"
250
+ - !ruby/object:Gem::Version
251
+ version: 0.9.26
252
+ type: :development
253
+ prerelease: false
254
+ version_requirements: !ruby/object:Gem::Requirement
255
+ requirements:
256
+ - - "~>"
257
+ - !ruby/object:Gem::Version
258
+ version: 0.9.26
259
+ description: Spellchecker+ with preprocessing and filtering for single and multiple
260
+ word blocks.
116
261
  email:
117
262
  - public.gma@gmail.com
118
263
  executables: []
119
264
  extensions: []
120
265
  extra_rdoc_files: []
121
266
  files:
122
- - .gitignore
123
- - .idea/.name
124
- - .idea/.rakeTasks
125
- - .idea/LittleWeasel.iml
126
- - .idea/dictionaries/gangelo.xml
127
- - .idea/encodings.xml
128
- - .idea/misc.xml
129
- - .idea/modules.xml
130
- - .idea/runConfigurations/Start_Yard_Server.xml
131
- - .idea/runConfigurations/checker_spec.xml
132
- - .idea/scopes/scope_settings.xml
133
- - .idea/vcs.xml
134
- - .idea/workspace.xml
135
- - .rspec
136
- - .ruby-version
267
+ - ".github/workflows/codeql-analysis.yml"
268
+ - ".gitignore"
269
+ - ".idea/.name"
270
+ - ".idea/.rakeTasks"
271
+ - ".idea/LittleWeasel.iml"
272
+ - ".idea/dictionaries/gangelo.xml"
273
+ - ".idea/encodings.xml"
274
+ - ".idea/misc.xml"
275
+ - ".idea/modules.xml"
276
+ - ".idea/runConfigurations/Start_Yard_Server.xml"
277
+ - ".idea/runConfigurations/checker_spec.xml"
278
+ - ".idea/scopes/scope_settings.xml"
279
+ - ".idea/vcs.xml"
280
+ - ".idea/workspace.xml"
281
+ - ".reek.yml"
282
+ - ".rspec"
283
+ - ".rubocop.yml"
284
+ - ".ruby-version"
285
+ - ".yardopts"
137
286
  - CHANGELOG.md
138
287
  - Gemfile
288
+ - Gemfile.lock
289
+ - Jenkinsfile
139
290
  - LICENSE.txt
140
291
  - LittleWeasel.gemspec
141
292
  - README.md
142
293
  - Rakefile
143
294
  - lib/LittleWeasel.rb
295
+ - lib/LittleWeasel/block_results.rb
296
+ - lib/LittleWeasel/configure.rb
297
+ - lib/LittleWeasel/dictionary.rb
298
+ - lib/LittleWeasel/dictionary_key.rb
299
+ - lib/LittleWeasel/dictionary_manager.rb
300
+ - lib/LittleWeasel/errors/dictionary_file_already_loaded_error.rb
301
+ - lib/LittleWeasel/errors/dictionary_file_empty_error.rb
302
+ - lib/LittleWeasel/errors/dictionary_file_not_found_error.rb
303
+ - lib/LittleWeasel/errors/dictionary_file_too_large_error.rb
304
+ - lib/LittleWeasel/errors/language_required_error.rb
305
+ - lib/LittleWeasel/errors/must_override_error.rb
306
+ - lib/LittleWeasel/filters/en_us/currency_filter.rb
307
+ - lib/LittleWeasel/filters/en_us/numeric_filter.rb
308
+ - lib/LittleWeasel/filters/en_us/single_character_word_filter.rb
309
+ - lib/LittleWeasel/filters/word_filter.rb
310
+ - lib/LittleWeasel/filters/word_filter_managable.rb
311
+ - lib/LittleWeasel/filters/word_filter_validatable.rb
312
+ - lib/LittleWeasel/filters/word_filterable.rb
313
+ - lib/LittleWeasel/filters/word_filters_validatable.rb
314
+ - lib/LittleWeasel/metadata/dictionary_metadata.rb
315
+ - lib/LittleWeasel/metadata/invalid_words_metadata.rb
316
+ - lib/LittleWeasel/metadata/invalid_words_service_results.rb
317
+ - lib/LittleWeasel/metadata/metadata_observable_validatable.rb
318
+ - lib/LittleWeasel/metadata/metadata_observerable.rb
319
+ - lib/LittleWeasel/metadata/metadatable.rb
320
+ - lib/LittleWeasel/modules/class_name_to_symbol.rb
321
+ - lib/LittleWeasel/modules/configurable.rb
322
+ - lib/LittleWeasel/modules/deep_dup.rb
323
+ - lib/LittleWeasel/modules/dictionary_cache_keys.rb
324
+ - lib/LittleWeasel/modules/dictionary_cache_servicable.rb
325
+ - lib/LittleWeasel/modules/dictionary_cache_validatable.rb
326
+ - lib/LittleWeasel/modules/dictionary_creator_servicable.rb
327
+ - lib/LittleWeasel/modules/dictionary_file_loader.rb
328
+ - lib/LittleWeasel/modules/dictionary_key_validatable.rb
329
+ - lib/LittleWeasel/modules/dictionary_keyable.rb
330
+ - lib/LittleWeasel/modules/dictionary_metadata_servicable.rb
331
+ - lib/LittleWeasel/modules/dictionary_metadata_validatable.rb
332
+ - lib/LittleWeasel/modules/dictionary_source_validatable.rb
333
+ - lib/LittleWeasel/modules/dictionary_sourceable.rb
334
+ - lib/LittleWeasel/modules/dictionary_validatable.rb
335
+ - lib/LittleWeasel/modules/language.rb
336
+ - lib/LittleWeasel/modules/language_validatable.rb
337
+ - lib/LittleWeasel/modules/locale.rb
338
+ - lib/LittleWeasel/modules/order_validatable.rb
339
+ - lib/LittleWeasel/modules/orderable.rb
340
+ - lib/LittleWeasel/modules/region.rb
341
+ - lib/LittleWeasel/modules/region_validatable.rb
342
+ - lib/LittleWeasel/modules/tag_validatable.rb
343
+ - lib/LittleWeasel/modules/taggable.rb
344
+ - lib/LittleWeasel/modules/word_results_validatable.rb
345
+ - lib/LittleWeasel/preprocessors/en_us/capitalize_preprocessor.rb
346
+ - lib/LittleWeasel/preprocessors/preprocessed_word.rb
347
+ - lib/LittleWeasel/preprocessors/preprocessed_word_validatable.rb
348
+ - lib/LittleWeasel/preprocessors/preprocessed_words.rb
349
+ - lib/LittleWeasel/preprocessors/preprocessed_words_validatable.rb
350
+ - lib/LittleWeasel/preprocessors/word_preprocessable.rb
351
+ - lib/LittleWeasel/preprocessors/word_preprocessor.rb
352
+ - lib/LittleWeasel/preprocessors/word_preprocessor_managable.rb
353
+ - lib/LittleWeasel/preprocessors/word_preprocessor_validatable.rb
354
+ - lib/LittleWeasel/preprocessors/word_preprocessors_validatable.rb
355
+ - lib/LittleWeasel/services/dictionary_cache_service.rb
356
+ - lib/LittleWeasel/services/dictionary_creator_service.rb
357
+ - lib/LittleWeasel/services/dictionary_file_loader_service.rb
358
+ - lib/LittleWeasel/services/dictionary_killer_service.rb
359
+ - lib/LittleWeasel/services/dictionary_metadata_service.rb
360
+ - lib/LittleWeasel/services/invalid_words_service.rb
144
361
  - lib/LittleWeasel/version.rb
145
- - lib/dictionary
146
- - spec/checker/checker_spec.rb
362
+ - lib/LittleWeasel/word_results.rb
363
+ - spec/factories/dictionary.rb
364
+ - spec/factories/dictionary_cache_service.rb
365
+ - spec/factories/dictionary_creator_service.rb
366
+ - spec/factories/dictionary_file_loader_service.rb
367
+ - spec/factories/dictionary_hash.rb
368
+ - spec/factories/dictionary_key.rb
369
+ - spec/factories/dictionary_killer_service.rb
370
+ - spec/factories/dictionary_manager.rb
371
+ - spec/factories/dictionary_metadata.rb
372
+ - spec/factories/dictionary_metadata_service.rb
373
+ - spec/factories/numeric_filter.rb
374
+ - spec/factories/preprocessed_word.rb
375
+ - spec/factories/preprocessed_words.rb
376
+ - spec/factories/single_character_word_filter.rb
377
+ - spec/factories/word_results.rb
378
+ - spec/lib/LittleWeasel/block_results_spec.rb
379
+ - spec/lib/LittleWeasel/configure_spec.rb
380
+ - spec/lib/LittleWeasel/dictionary_key_spec.rb
381
+ - spec/lib/LittleWeasel/dictionary_manager_spec.rb
382
+ - spec/lib/LittleWeasel/dictionary_spec.rb
383
+ - spec/lib/LittleWeasel/filters/en_us/currency_filter_spec.rb
384
+ - spec/lib/LittleWeasel/filters/en_us/numeric_filter_spec.rb
385
+ - spec/lib/LittleWeasel/filters/en_us/single_character_word_filter_spec.rb
386
+ - spec/lib/LittleWeasel/filters/word_filter_managable_spec.rb
387
+ - spec/lib/LittleWeasel/filters/word_filter_spec.rb
388
+ - spec/lib/LittleWeasel/filters/word_filter_validatable_spec.rb
389
+ - spec/lib/LittleWeasel/filters/word_filters_validatable_spec.rb
390
+ - spec/lib/LittleWeasel/integraton_tests/dictionary_integration_spec.rb
391
+ - spec/lib/LittleWeasel/metadata/dictionary_creator_servicable_spec.rb
392
+ - spec/lib/LittleWeasel/metadata/dictionary_metadata_spec.rb
393
+ - spec/lib/LittleWeasel/metadata/invalid_words_metadata_spec.rb
394
+ - spec/lib/LittleWeasel/metadata/metadata_observerable_spec.rb
395
+ - spec/lib/LittleWeasel/metadata/metadatable_spec.rb
396
+ - spec/lib/LittleWeasel/modules/class_name_to_symbol_spec.rb
397
+ - spec/lib/LittleWeasel/modules/dictionary_file_loader_spec.rb
398
+ - spec/lib/LittleWeasel/modules/dictionary_sourceable_spec.rb
399
+ - spec/lib/LittleWeasel/modules/language_spec.rb
400
+ - spec/lib/LittleWeasel/modules/locale_spec.rb
401
+ - spec/lib/LittleWeasel/modules/region_spec.rb
402
+ - spec/lib/LittleWeasel/preprocessors/en_us/capitalize_preprocessor_spec.rb
403
+ - spec/lib/LittleWeasel/preprocessors/preprocessed_word_spec.rb
404
+ - spec/lib/LittleWeasel/preprocessors/preprocessed_word_validatable_spec.rb
405
+ - spec/lib/LittleWeasel/preprocessors/preprocessed_words_spec.rb
406
+ - spec/lib/LittleWeasel/preprocessors/preprocessed_words_validatable_spec.rb
407
+ - spec/lib/LittleWeasel/preprocessors/word_preprocessor_managable_spec.rb
408
+ - spec/lib/LittleWeasel/preprocessors/word_preprocessor_spec.rb
409
+ - spec/lib/LittleWeasel/preprocessors/word_preprocessor_validatable_spec.rb
410
+ - spec/lib/LittleWeasel/preprocessors/word_preprocessors_validatable_spec.rb
411
+ - spec/lib/LittleWeasel/services/dictionary_cache_service_spec.rb
412
+ - spec/lib/LittleWeasel/services/dictionary_creator_service_spec.rb
413
+ - spec/lib/LittleWeasel/services/dictionary_file_loader_service_spec.rb
414
+ - spec/lib/LittleWeasel/services/dictionary_metadata_service_spec.rb
415
+ - spec/lib/LittleWeasel/word_results_spec.rb
416
+ - spec/lib/LittleWeasel/workflow/workflow_spec.rb
147
417
  - spec/spec_helper.rb
418
+ - spec/support/factory_bot.rb
419
+ - spec/support/file_helpers.rb
420
+ - spec/support/files/empty-dictionary.txt
421
+ - spec/support/files/en-US-big.txt
422
+ - spec/support/files/en-US-tagged.txt
423
+ - spec/support/files/en-US.txt
424
+ - spec/support/files/en.txt
425
+ - spec/support/files/es-ES.txt
426
+ - spec/support/files/es.txt
427
+ - spec/support/general_helpers.rb
428
+ - spec/support/shared_contexts.rb
429
+ - spec/support/shared_examples.rb
148
430
  homepage: http://www.geneangelo.com
149
431
  licenses:
150
432
  - MIT
151
433
  metadata: {}
152
- post_install_message:
434
+ post_install_message:
153
435
  rdoc_options: []
154
436
  require_paths:
155
437
  - lib
156
438
  required_ruby_version: !ruby/object:Gem::Requirement
157
439
  requirements:
158
- - - ~>
440
+ - - "~>"
441
+ - !ruby/object:Gem::Version
442
+ version: '3.0'
443
+ - - ">="
159
444
  - !ruby/object:Gem::Version
160
- version: '2.0'
445
+ version: 3.0.1
161
446
  required_rubygems_version: !ruby/object:Gem::Requirement
162
447
  requirements:
163
- - - '>='
448
+ - - ">="
164
449
  - !ruby/object:Gem::Version
165
450
  version: '0'
166
451
  requirements: []
167
- rubyforge_project:
168
- rubygems_version: 2.0.14
169
- signing_key:
452
+ rubygems_version: 3.2.15
453
+ signing_key:
170
454
  specification_version: 4
171
- summary: Simply checks a word or group of words for validity against an english dictionary
172
- file.
455
+ summary: Checks a word or group of words for validity against a dictionary/ies provided.
456
+ Word filtering and word preprocessing is available.
173
457
  test_files:
174
- - spec/checker/checker_spec.rb
458
+ - spec/factories/dictionary.rb
459
+ - spec/factories/dictionary_cache_service.rb
460
+ - spec/factories/dictionary_creator_service.rb
461
+ - spec/factories/dictionary_file_loader_service.rb
462
+ - spec/factories/dictionary_hash.rb
463
+ - spec/factories/dictionary_key.rb
464
+ - spec/factories/dictionary_killer_service.rb
465
+ - spec/factories/dictionary_manager.rb
466
+ - spec/factories/dictionary_metadata.rb
467
+ - spec/factories/dictionary_metadata_service.rb
468
+ - spec/factories/numeric_filter.rb
469
+ - spec/factories/preprocessed_word.rb
470
+ - spec/factories/preprocessed_words.rb
471
+ - spec/factories/single_character_word_filter.rb
472
+ - spec/factories/word_results.rb
473
+ - spec/lib/LittleWeasel/block_results_spec.rb
474
+ - spec/lib/LittleWeasel/configure_spec.rb
475
+ - spec/lib/LittleWeasel/dictionary_key_spec.rb
476
+ - spec/lib/LittleWeasel/dictionary_manager_spec.rb
477
+ - spec/lib/LittleWeasel/dictionary_spec.rb
478
+ - spec/lib/LittleWeasel/filters/en_us/currency_filter_spec.rb
479
+ - spec/lib/LittleWeasel/filters/en_us/numeric_filter_spec.rb
480
+ - spec/lib/LittleWeasel/filters/en_us/single_character_word_filter_spec.rb
481
+ - spec/lib/LittleWeasel/filters/word_filter_managable_spec.rb
482
+ - spec/lib/LittleWeasel/filters/word_filter_spec.rb
483
+ - spec/lib/LittleWeasel/filters/word_filter_validatable_spec.rb
484
+ - spec/lib/LittleWeasel/filters/word_filters_validatable_spec.rb
485
+ - spec/lib/LittleWeasel/integraton_tests/dictionary_integration_spec.rb
486
+ - spec/lib/LittleWeasel/metadata/dictionary_creator_servicable_spec.rb
487
+ - spec/lib/LittleWeasel/metadata/dictionary_metadata_spec.rb
488
+ - spec/lib/LittleWeasel/metadata/invalid_words_metadata_spec.rb
489
+ - spec/lib/LittleWeasel/metadata/metadata_observerable_spec.rb
490
+ - spec/lib/LittleWeasel/metadata/metadatable_spec.rb
491
+ - spec/lib/LittleWeasel/modules/class_name_to_symbol_spec.rb
492
+ - spec/lib/LittleWeasel/modules/dictionary_file_loader_spec.rb
493
+ - spec/lib/LittleWeasel/modules/dictionary_sourceable_spec.rb
494
+ - spec/lib/LittleWeasel/modules/language_spec.rb
495
+ - spec/lib/LittleWeasel/modules/locale_spec.rb
496
+ - spec/lib/LittleWeasel/modules/region_spec.rb
497
+ - spec/lib/LittleWeasel/preprocessors/en_us/capitalize_preprocessor_spec.rb
498
+ - spec/lib/LittleWeasel/preprocessors/preprocessed_word_spec.rb
499
+ - spec/lib/LittleWeasel/preprocessors/preprocessed_word_validatable_spec.rb
500
+ - spec/lib/LittleWeasel/preprocessors/preprocessed_words_spec.rb
501
+ - spec/lib/LittleWeasel/preprocessors/preprocessed_words_validatable_spec.rb
502
+ - spec/lib/LittleWeasel/preprocessors/word_preprocessor_managable_spec.rb
503
+ - spec/lib/LittleWeasel/preprocessors/word_preprocessor_spec.rb
504
+ - spec/lib/LittleWeasel/preprocessors/word_preprocessor_validatable_spec.rb
505
+ - spec/lib/LittleWeasel/preprocessors/word_preprocessors_validatable_spec.rb
506
+ - spec/lib/LittleWeasel/services/dictionary_cache_service_spec.rb
507
+ - spec/lib/LittleWeasel/services/dictionary_creator_service_spec.rb
508
+ - spec/lib/LittleWeasel/services/dictionary_file_loader_service_spec.rb
509
+ - spec/lib/LittleWeasel/services/dictionary_metadata_service_spec.rb
510
+ - spec/lib/LittleWeasel/word_results_spec.rb
511
+ - spec/lib/LittleWeasel/workflow/workflow_spec.rb
175
512
  - spec/spec_helper.rb
176
- has_rdoc:
513
+ - spec/support/factory_bot.rb
514
+ - spec/support/file_helpers.rb
515
+ - spec/support/files/empty-dictionary.txt
516
+ - spec/support/files/en-US-big.txt
517
+ - spec/support/files/en-US-tagged.txt
518
+ - spec/support/files/en-US.txt
519
+ - spec/support/files/en.txt
520
+ - spec/support/files/es-ES.txt
521
+ - spec/support/files/es.txt
522
+ - spec/support/general_helpers.rb
523
+ - spec/support/shared_contexts.rb
524
+ - spec/support/shared_examples.rb