picky 2.5.2 → 2.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (255) hide show
  1. data/lib/picky/adapters/rack/base.rb +23 -0
  2. data/lib/picky/adapters/rack/live_parameters.rb +33 -0
  3. data/lib/picky/adapters/rack/query.rb +65 -0
  4. data/lib/picky/adapters/rack.rb +30 -0
  5. data/lib/picky/application.rb +5 -5
  6. data/lib/picky/backend/backend.rb +108 -0
  7. data/lib/picky/backend/file/basic.rb +101 -0
  8. data/lib/picky/backend/file/json.rb +34 -0
  9. data/lib/picky/backend/file/marshal.rb +34 -0
  10. data/lib/picky/backend/file/text.rb +56 -0
  11. data/lib/picky/backend/files.rb +30 -0
  12. data/lib/picky/backend/redis/basic.rb +85 -0
  13. data/lib/picky/backend/redis/list_hash.rb +49 -0
  14. data/lib/picky/backend/redis/string_hash.rb +40 -0
  15. data/lib/picky/backend/redis.rb +40 -0
  16. data/lib/picky/calculations/location.rb +57 -0
  17. data/lib/picky/categories.rb +62 -0
  18. data/lib/picky/categories_indexed.rb +93 -0
  19. data/lib/picky/categories_indexing.rb +12 -0
  20. data/lib/picky/category.rb +127 -0
  21. data/lib/picky/category_indexed.rb +64 -0
  22. data/lib/picky/category_indexing.rb +145 -0
  23. data/lib/picky/{internals/ext → ext}/maybe_compile.rb +0 -0
  24. data/lib/picky/{internals/ext → ext}/ruby19/extconf.rb +0 -0
  25. data/lib/picky/{internals/ext → ext}/ruby19/performant.c +0 -0
  26. data/lib/picky/{internals/extensions → extensions}/array.rb +0 -0
  27. data/lib/picky/extensions/class.rb +11 -0
  28. data/lib/picky/{internals/extensions → extensions}/hash.rb +0 -0
  29. data/lib/picky/{internals/extensions → extensions}/module.rb +0 -0
  30. data/lib/picky/{internals/extensions → extensions}/object.rb +0 -0
  31. data/lib/picky/{internals/extensions → extensions}/symbol.rb +0 -0
  32. data/lib/picky/frontend_adapters/rack.rb +146 -0
  33. data/lib/picky/generators/aliases.rb +3 -3
  34. data/lib/picky/generators/base.rb +15 -0
  35. data/lib/picky/generators/partial/default.rb +5 -0
  36. data/lib/picky/generators/partial/none.rb +31 -0
  37. data/lib/picky/generators/partial/strategy.rb +25 -0
  38. data/lib/picky/generators/partial/substring.rb +118 -0
  39. data/lib/picky/generators/partial_generator.rb +15 -0
  40. data/lib/picky/generators/similarity/default.rb +7 -0
  41. data/lib/picky/generators/similarity/double_metaphone.rb +28 -0
  42. data/lib/picky/generators/similarity/metaphone.rb +28 -0
  43. data/lib/picky/generators/similarity/none.rb +31 -0
  44. data/lib/picky/generators/similarity/phonetic.rb +65 -0
  45. data/lib/picky/generators/similarity/soundex.rb +28 -0
  46. data/lib/picky/generators/similarity/strategy.rb +9 -0
  47. data/lib/picky/generators/similarity_generator.rb +15 -0
  48. data/lib/picky/generators/strategy.rb +14 -0
  49. data/lib/picky/generators/weights/default.rb +7 -0
  50. data/lib/picky/generators/weights/logarithmic.rb +39 -0
  51. data/lib/picky/generators/weights/strategy.rb +9 -0
  52. data/lib/picky/generators/weights_generator.rb +15 -0
  53. data/lib/picky/{internals/helpers → helpers}/measuring.rb +0 -0
  54. data/lib/picky/index/base.rb +119 -104
  55. data/lib/picky/index/base_indexed.rb +27 -0
  56. data/lib/picky/index/base_indexing.rb +119 -0
  57. data/lib/picky/index/memory.rb +6 -18
  58. data/lib/picky/index/redis.rb +6 -18
  59. data/lib/picky/indexed/bundle/base.rb +110 -0
  60. data/lib/picky/indexed/bundle/memory.rb +91 -0
  61. data/lib/picky/indexed/bundle/redis.rb +45 -0
  62. data/lib/picky/indexed/wrappers/bundle/calculation.rb +35 -0
  63. data/lib/picky/indexed/wrappers/bundle/location.rb +42 -0
  64. data/lib/picky/indexed/wrappers/bundle/wrapper.rb +43 -0
  65. data/lib/picky/indexed/wrappers/category/location.rb +25 -0
  66. data/lib/picky/indexed/wrappers/exact_first.rb +55 -0
  67. data/lib/picky/{internals/indexers → indexers}/base.rb +0 -0
  68. data/lib/picky/{internals/indexers → indexers}/parallel.rb +0 -0
  69. data/lib/picky/{internals/indexers → indexers}/serial.rb +0 -0
  70. data/lib/picky/{internals/indexers → indexers}/solr.rb +0 -0
  71. data/lib/picky/indexes.rb +73 -0
  72. data/lib/picky/indexes_indexed.rb +29 -0
  73. data/lib/picky/indexes_indexing.rb +49 -0
  74. data/lib/picky/indexing/bundle/base.rb +212 -0
  75. data/lib/picky/indexing/bundle/memory.rb +25 -0
  76. data/lib/picky/indexing/bundle/redis.rb +24 -0
  77. data/lib/picky/indexing/bundle/super_base.rb +61 -0
  78. data/lib/picky/indexing/wrappers/category/location.rb +25 -0
  79. data/lib/picky/interfaces/live_parameters.rb +8 -8
  80. data/lib/picky/loader.rb +89 -95
  81. data/lib/picky/{internals/performant.rb → performant.rb} +0 -0
  82. data/lib/picky/query/allocation.rb +84 -0
  83. data/lib/picky/query/allocations.rb +114 -0
  84. data/lib/picky/query/combination.rb +76 -0
  85. data/lib/picky/query/combinations/base.rb +70 -0
  86. data/lib/picky/query/combinations/memory.rb +48 -0
  87. data/lib/picky/query/combinations/redis.rb +86 -0
  88. data/lib/picky/query/indexes.rb +195 -0
  89. data/lib/picky/query/qualifiers.rb +76 -0
  90. data/lib/picky/query/token.rb +198 -0
  91. data/lib/picky/query/tokens.rb +103 -0
  92. data/lib/picky/{internals/query → query}/weights.rb +0 -0
  93. data/lib/picky/results.rb +1 -1
  94. data/lib/picky/search.rb +6 -6
  95. data/lib/picky/{internals/solr → solr}/schema_generator.rb +0 -0
  96. data/lib/picky/sources/db.rb +7 -7
  97. data/lib/picky/sources/wrappers/location.rb +2 -2
  98. data/lib/picky/tokenizers/base.rb +224 -0
  99. data/lib/picky/tokenizers/index.rb +30 -0
  100. data/lib/picky/tokenizers/location.rb +49 -0
  101. data/lib/picky/tokenizers/query.rb +55 -0
  102. data/lib/tasks/index.rake +4 -3
  103. data/lib/tasks/try.rake +2 -2
  104. data/spec/lib/{internals/adapters → adapters}/rack/base_spec.rb +1 -1
  105. data/spec/lib/{internals/adapters → adapters}/rack/live_parameters_spec.rb +1 -1
  106. data/spec/lib/{internals/adapters → adapters}/rack/query_spec.rb +1 -1
  107. data/spec/lib/application_spec.rb +3 -3
  108. data/spec/lib/{internals/index → backend}/file/basic_spec.rb +1 -1
  109. data/spec/lib/{internals/index → backend}/file/json_spec.rb +1 -1
  110. data/spec/lib/{internals/index → backend}/file/marshal_spec.rb +1 -1
  111. data/spec/lib/{internals/index → backend}/file/text_spec.rb +1 -1
  112. data/spec/lib/{internals/index → backend}/files_spec.rb +3 -3
  113. data/spec/lib/{internals/index → backend}/redis/basic_spec.rb +1 -1
  114. data/spec/lib/{internals/index → backend}/redis/list_hash_spec.rb +1 -1
  115. data/spec/lib/{internals/index → backend}/redis/string_hash_spec.rb +1 -1
  116. data/spec/lib/{internals/index → backend}/redis_spec.rb +11 -5
  117. data/spec/lib/{internals/calculations → calculations}/location_spec.rb +1 -1
  118. data/spec/lib/{internals/indexed/categories_spec.rb → categories_indexed_spec.rb} +10 -10
  119. data/spec/lib/{internals/indexed/category_spec.rb → category_indexed_spec.rb} +12 -12
  120. data/spec/lib/{internals/indexing/category_spec.rb → category_indexing_spec.rb} +10 -10
  121. data/spec/lib/{internals/cores_spec.rb → cores_spec.rb} +0 -0
  122. data/spec/lib/{internals/extensions → extensions}/array_spec.rb +0 -0
  123. data/spec/lib/{internals/extensions → extensions}/hash_spec.rb +0 -0
  124. data/spec/lib/{internals/extensions → extensions}/module_spec.rb +0 -0
  125. data/spec/lib/{internals/extensions → extensions}/object_spec.rb +0 -0
  126. data/spec/lib/{internals/extensions → extensions}/symbol_spec.rb +0 -0
  127. data/spec/lib/{internals/frontend_adapters → frontend_adapters}/rack_spec.rb +10 -10
  128. data/spec/lib/generators/aliases_spec.rb +3 -3
  129. data/spec/lib/{internals/generators → generators}/cacher_strategy_spec.rb +1 -1
  130. data/spec/lib/{internals/generators → generators}/partial/default_spec.rb +3 -3
  131. data/spec/lib/{internals/generators → generators}/partial/none_spec.rb +2 -2
  132. data/spec/lib/{internals/generators → generators}/partial/substring_spec.rb +1 -1
  133. data/spec/lib/{internals/generators → generators}/partial_generator_spec.rb +3 -3
  134. data/spec/lib/{internals/generators → generators}/similarity/double_metaphone_spec.rb +1 -1
  135. data/spec/lib/{internals/generators → generators}/similarity/metaphone_spec.rb +1 -1
  136. data/spec/lib/{internals/generators → generators}/similarity/none_spec.rb +1 -1
  137. data/spec/lib/{internals/generators → generators}/similarity/phonetic_spec.rb +1 -1
  138. data/spec/lib/{internals/generators → generators}/similarity/soundex_spec.rb +1 -1
  139. data/spec/lib/{internals/generators → generators}/similarity_generator_spec.rb +2 -2
  140. data/spec/lib/{internals/generators → generators}/weights/logarithmic_spec.rb +1 -1
  141. data/spec/lib/{internals/generators → generators}/weights_generator_spec.rb +5 -5
  142. data/spec/lib/{internals/helpers → helpers}/measuring_spec.rb +0 -0
  143. data/spec/lib/{internals/indexed/index_spec.rb → index/base_indexed_spec.rb} +5 -5
  144. data/spec/lib/{internals/indexing/index_spec.rb → index/base_indexing_spec.rb} +6 -19
  145. data/spec/lib/index/base_spec.rb +10 -53
  146. data/spec/lib/{internals/indexed → indexed}/bundle/memory_spec.rb +5 -5
  147. data/spec/lib/{internals/indexed → indexed}/bundle/redis_spec.rb +4 -4
  148. data/spec/lib/{internals/indexed → indexed}/wrappers/bundle/calculation_spec.rb +1 -1
  149. data/spec/lib/{internals/indexed → indexed}/wrappers/bundle/wrapper_spec.rb +1 -1
  150. data/spec/lib/{internals/indexed → indexed}/wrappers/exact_first_spec.rb +7 -7
  151. data/spec/lib/{internals/indexers → indexers}/base_spec.rb +0 -0
  152. data/spec/lib/{internals/indexers → indexers}/parallel_spec.rb +0 -0
  153. data/spec/lib/{internals/indexers → indexers}/serial_spec.rb +0 -0
  154. data/spec/lib/indexes_class_spec.rb +30 -0
  155. data/spec/lib/{indexed/indexes_spec.rb → indexes_indexed_spec.rb} +1 -1
  156. data/spec/lib/{indexing/indexes_spec.rb → indexes_indexing_spec.rb} +8 -8
  157. data/spec/lib/{internals/indexing/indexes_spec.rb → indexes_spec.rb} +15 -12
  158. data/spec/lib/{internals/indexing → indexing}/bundle/memory_partial_generation_speed_spec.rb +4 -4
  159. data/spec/lib/{internals/indexing → indexing}/bundle/memory_spec.rb +3 -3
  160. data/spec/lib/{internals/indexing → indexing}/bundle/redis_spec.rb +3 -3
  161. data/spec/lib/{internals/indexing → indexing}/bundle/super_base_spec.rb +2 -2
  162. data/spec/lib/{internals/interfaces → interfaces}/live_parameters_spec.rb +0 -0
  163. data/spec/lib/query/allocation_spec.rb +1 -1
  164. data/spec/lib/query/allocations_spec.rb +1 -1
  165. data/spec/lib/query/combination_spec.rb +5 -5
  166. data/spec/lib/query/combinations/base_spec.rb +1 -1
  167. data/spec/lib/query/combinations/memory_spec.rb +1 -1
  168. data/spec/lib/query/combinations/redis_spec.rb +1 -1
  169. data/spec/lib/query/indexes_spec.rb +1 -1
  170. data/spec/lib/query/qualifiers_spec.rb +4 -4
  171. data/spec/lib/query/token_spec.rb +3 -3
  172. data/spec/lib/query/tokens_spec.rb +32 -32
  173. data/spec/lib/search_spec.rb +5 -5
  174. data/spec/lib/{internals/solr → solr}/schema_generator_spec.rb +0 -0
  175. data/spec/lib/sources/db_spec.rb +4 -8
  176. data/spec/lib/sources/wrappers/location_spec.rb +1 -1
  177. data/spec/lib/{internals/tokenizers → tokenizers}/base_spec.rb +1 -1
  178. data/spec/lib/{internals/tokenizers → tokenizers}/index_spec.rb +1 -1
  179. data/spec/lib/{internals/tokenizers → tokenizers}/query_spec.rb +1 -1
  180. metadata +214 -215
  181. data/lib/picky/aliases.rb +0 -4
  182. data/lib/picky/index_bundle.rb +0 -48
  183. data/lib/picky/indexed/indexes.rb +0 -59
  184. data/lib/picky/indexing/indexes.rb +0 -87
  185. data/lib/picky/internals/adapters/rack/base.rb +0 -27
  186. data/lib/picky/internals/adapters/rack/live_parameters.rb +0 -37
  187. data/lib/picky/internals/adapters/rack/query.rb +0 -69
  188. data/lib/picky/internals/adapters/rack.rb +0 -34
  189. data/lib/picky/internals/calculations/location.rb +0 -59
  190. data/lib/picky/internals/frontend_adapters/rack.rb +0 -150
  191. data/lib/picky/internals/generators/base.rb +0 -19
  192. data/lib/picky/internals/generators/partial/default.rb +0 -7
  193. data/lib/picky/internals/generators/partial/none.rb +0 -35
  194. data/lib/picky/internals/generators/partial/strategy.rb +0 -29
  195. data/lib/picky/internals/generators/partial/substring.rb +0 -122
  196. data/lib/picky/internals/generators/partial_generator.rb +0 -19
  197. data/lib/picky/internals/generators/similarity/default.rb +0 -9
  198. data/lib/picky/internals/generators/similarity/double_metaphone.rb +0 -32
  199. data/lib/picky/internals/generators/similarity/metaphone.rb +0 -32
  200. data/lib/picky/internals/generators/similarity/none.rb +0 -35
  201. data/lib/picky/internals/generators/similarity/phonetic.rb +0 -69
  202. data/lib/picky/internals/generators/similarity/soundex.rb +0 -32
  203. data/lib/picky/internals/generators/similarity/strategy.rb +0 -11
  204. data/lib/picky/internals/generators/similarity_generator.rb +0 -19
  205. data/lib/picky/internals/generators/strategy.rb +0 -18
  206. data/lib/picky/internals/generators/weights/default.rb +0 -9
  207. data/lib/picky/internals/generators/weights/logarithmic.rb +0 -43
  208. data/lib/picky/internals/generators/weights/strategy.rb +0 -11
  209. data/lib/picky/internals/generators/weights_generator.rb +0 -19
  210. data/lib/picky/internals/index/backend.rb +0 -112
  211. data/lib/picky/internals/index/file/basic.rb +0 -105
  212. data/lib/picky/internals/index/file/json.rb +0 -38
  213. data/lib/picky/internals/index/file/marshal.rb +0 -38
  214. data/lib/picky/internals/index/file/text.rb +0 -60
  215. data/lib/picky/internals/index/files.rb +0 -34
  216. data/lib/picky/internals/index/redis/basic.rb +0 -89
  217. data/lib/picky/internals/index/redis/list_hash.rb +0 -53
  218. data/lib/picky/internals/index/redis/string_hash.rb +0 -44
  219. data/lib/picky/internals/index/redis.rb +0 -44
  220. data/lib/picky/internals/indexed/bundle/base.rb +0 -114
  221. data/lib/picky/internals/indexed/bundle/memory.rb +0 -95
  222. data/lib/picky/internals/indexed/bundle/redis.rb +0 -49
  223. data/lib/picky/internals/indexed/categories.rb +0 -140
  224. data/lib/picky/internals/indexed/category.rb +0 -111
  225. data/lib/picky/internals/indexed/index.rb +0 -63
  226. data/lib/picky/internals/indexed/wrappers/bundle/calculation.rb +0 -37
  227. data/lib/picky/internals/indexed/wrappers/bundle/location.rb +0 -44
  228. data/lib/picky/internals/indexed/wrappers/bundle/wrapper.rb +0 -45
  229. data/lib/picky/internals/indexed/wrappers/category/location.rb +0 -27
  230. data/lib/picky/internals/indexed/wrappers/exact_first.rb +0 -59
  231. data/lib/picky/internals/indexing/bundle/base.rb +0 -216
  232. data/lib/picky/internals/indexing/bundle/memory.rb +0 -29
  233. data/lib/picky/internals/indexing/bundle/redis.rb +0 -28
  234. data/lib/picky/internals/indexing/bundle/super_base.rb +0 -65
  235. data/lib/picky/internals/indexing/category.rb +0 -153
  236. data/lib/picky/internals/indexing/index.rb +0 -142
  237. data/lib/picky/internals/indexing/wrappers/category/location.rb +0 -27
  238. data/lib/picky/internals/query/allocation.rb +0 -88
  239. data/lib/picky/internals/query/allocations.rb +0 -118
  240. data/lib/picky/internals/query/combination.rb +0 -80
  241. data/lib/picky/internals/query/combinations/base.rb +0 -74
  242. data/lib/picky/internals/query/combinations/memory.rb +0 -52
  243. data/lib/picky/internals/query/combinations/redis.rb +0 -90
  244. data/lib/picky/internals/query/indexes.rb +0 -199
  245. data/lib/picky/internals/query/qualifiers.rb +0 -82
  246. data/lib/picky/internals/query/token.rb +0 -202
  247. data/lib/picky/internals/query/tokens.rb +0 -109
  248. data/lib/picky/internals/shared/category.rb +0 -52
  249. data/lib/picky/internals/tokenizers/base.rb +0 -228
  250. data/lib/picky/internals/tokenizers/index.rb +0 -34
  251. data/lib/picky/internals/tokenizers/location.rb +0 -54
  252. data/lib/picky/internals/tokenizers/query.rb +0 -59
  253. data/lib/picky/internals.rb +0 -2
  254. data/spec/lib/aliases_spec.rb +0 -9
  255. data/spec/lib/index_bundle_spec.rb +0 -69
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Index::File::Marshal do
3
+ describe Backend::File::Marshal do
4
4
 
5
5
  before(:each) do
6
6
  @file = described_class.new "some_cache_path"
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Index::File::Text do
3
+ describe Backend::File::Text do
4
4
 
5
5
  before(:each) do
6
6
  @file = described_class.new "some_cache_path"
@@ -1,10 +1,10 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Index::Files do
3
+ describe Backend::Files do
4
4
 
5
5
  before(:each) do
6
- index = stub :index, :name => :some_index, :bundle_class => nil
7
- category = Internals::Indexing::Category.new :some_category, index
6
+ index = Index::Memory.new :some_index, source: []
7
+ category = Category.new :some_category, index
8
8
 
9
9
  @files = described_class.new :some_name, category
10
10
 
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Index::Redis::Basic do
3
+ describe Backend::Redis::Basic do
4
4
 
5
5
  let(:redis) { described_class.new "some_namespace" }
6
6
 
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Index::Redis::ListHash do
3
+ describe Backend::Redis::ListHash do
4
4
 
5
5
  let(:index) { described_class.new :some_namespace }
6
6
 
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Index::Redis::StringHash do
3
+ describe Backend::Redis::StringHash do
4
4
 
5
5
  let(:index) { described_class.new :some_namespace }
6
6
 
@@ -1,11 +1,14 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Index::Redis do
3
+ describe Backend::Redis do
4
4
 
5
5
  context 'indexing' do
6
6
  let(:category) do
7
- index = stub :index, :name => :some_index, :bundle_class => nil
8
- category = Internals::Indexing::Category.new :some_category, index
7
+ index = stub :index,
8
+ :name => :some_index,
9
+ :indexing_bundle_class => Indexing::Bundle::Memory,
10
+ :indexed_bundle_class => Indexed::Bundle::Memory
11
+ category = Category.new :some_category, index
9
12
  end
10
13
  let(:redis) { described_class.new :some_name, category }
11
14
 
@@ -75,8 +78,11 @@ describe Internals::Index::Redis do
75
78
 
76
79
  context 'indexed' do
77
80
  let(:category) do
78
- index = stub :index, :name => :some_index
79
- category = Internals::Indexed::Category.new :some_category, index
81
+ index = stub :index,
82
+ :name => :some_index,
83
+ :indexing_bundle_class => Indexing::Bundle::Memory,
84
+ :indexed_bundle_class => Indexed::Bundle::Memory
85
+ category = Category.new :some_category, index
80
86
  end
81
87
  let(:redis) { described_class.new :some_name, category }
82
88
 
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Calculations::Location do
3
+ describe Calculations::Location do
4
4
 
5
5
  context 'with precision 1' do
6
6
  before(:each) do
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Indexed::Categories do
3
+ describe Categories do
4
4
  context 'with option ignore_unassigned_tokens' do
5
5
  context 'ignore_unassigned_tokens true' do
6
6
  before(:each) do
@@ -22,16 +22,16 @@ describe Internals::Indexed::Categories do
22
22
 
23
23
  context "with real categories" do
24
24
  before(:each) do
25
- @index1 = stub :index1, :name => :some_index
25
+ @index1 = Index::Memory.new :name, source: []
26
26
 
27
27
  @categories = described_class.new
28
- @categories << Internals::Indexed::Category.new(:category1, @index1)
29
- @categories << Internals::Indexed::Category.new(:category2, @index1)
30
- @categories << Internals::Indexed::Category.new(:category3, @index1)
28
+ @categories << Category.new(:category1, @index1)
29
+ @categories << Category.new(:category2, @index1)
30
+ @categories << Category.new(:category3, @index1)
31
31
  end
32
32
  describe "similar_possible_for" do
33
33
  before(:each) do
34
- @token = Internals::Query::Token.processed 'similar~'
34
+ @token = Query::Token.processed 'similar~'
35
35
  end
36
36
  it "returns possible categories" do
37
37
  @categories.similar_possible_for(@token).should == []
@@ -65,11 +65,11 @@ describe Internals::Indexed::Categories do
65
65
 
66
66
  context 'without options' do
67
67
  before(:each) do
68
- @index1 = stub :index1, :name => :some_index
68
+ @index1 = Index::Memory.new :some_index, source: []
69
69
 
70
- @category1 = Internals::Indexed::Category.new :category1, @index1
71
- @category2 = Internals::Indexed::Category.new :category2, @index1
72
- @category3 = Internals::Indexed::Category.new :category3, @index1
70
+ @category1 = Category.new :category1, @index1
71
+ @category2 = Category.new :category2, @index1
72
+ @category3 = Category.new :category3, @index1
73
73
 
74
74
  @categories = described_class.new
75
75
  @categories << @category1
@@ -1,9 +1,9 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Indexed::Category do
3
+ describe Category do
4
4
 
5
5
  before(:each) do
6
- @index = stub :index, :name => :some_index
6
+ @index = Index::Base.new :some_index, source: []
7
7
  @partial_strategy = stub :partial, :use_exact_for_partial? => false
8
8
  @weights_strategy = stub :weights
9
9
  @similarity_strategy = stub :similarity
@@ -29,30 +29,30 @@ describe Internals::Indexed::Category do
29
29
  @partial_strategy.stub! :use_exact_for_partial? => true
30
30
  end
31
31
  it 'returns the partial index' do
32
- @category.partial.should be_kind_of(Internals::Indexed::Bundle::Memory)
32
+ @category.indexed_partial.should be_kind_of(Indexed::Bundle::Memory)
33
33
  end
34
34
  end
35
35
  context 'with a partial strategy that uses the partial index (default)' do
36
36
  it 'returns the partial index' do
37
- @category.partial.should be_kind_of(Internals::Indexed::Bundle::Memory)
37
+ @category.indexed_partial.should be_kind_of(Indexed::Bundle::Memory)
38
38
  end
39
39
  end
40
40
  end
41
- context 'indexed_bundle_class defined' do
41
+ context 'indexed_bundle_class defined differently' do
42
42
  before(:each) do
43
- @category = described_class.new :some_name, @index, :indexed_bundle_class => Internals::Indexed::Bundle::Redis
43
+ @category = described_class.new :some_name, Index::Redis.new(:some_index_name, source: [])
44
44
  end
45
45
  context 'with a partial strategy that uses the exact index' do
46
46
  before(:each) do
47
47
  @partial_strategy.stub! :use_exact_for_partial? => true
48
48
  end
49
49
  it 'returns the partial index' do
50
- @category.partial.should be_kind_of(Internals::Indexed::Bundle::Redis)
50
+ @category.indexed_partial.should be_kind_of(Indexed::Bundle::Redis)
51
51
  end
52
52
  end
53
53
  context 'with a partial strategy that uses the partial index (default)' do
54
54
  it 'returns the partial index' do
55
- @category.partial.should be_kind_of(Internals::Indexed::Bundle::Redis)
55
+ @category.indexed_partial.should be_kind_of(Indexed::Bundle::Redis)
56
56
  end
57
57
  end
58
58
  end
@@ -143,10 +143,10 @@ describe Internals::Indexed::Category do
143
143
  @category.stub! :weight => :some_weight, :bundle_for => :bundle
144
144
  end
145
145
  it 'should return a new combination' do
146
- @category.combination_for(@token).should be_kind_of(Internals::Query::Combination)
146
+ @category.combination_for(@token).should be_kind_of(Query::Combination)
147
147
  end
148
148
  it 'should create the combination correctly' do
149
- Internals::Query::Combination.should_receive(:new).once.with @token, @category
149
+ Query::Combination.should_receive(:new).once.with @token, @category
150
150
 
151
151
  @category.combination_for @token
152
152
  end
@@ -155,8 +155,8 @@ describe Internals::Indexed::Category do
155
155
 
156
156
  context 'stubbed exact/partial' do
157
157
  before(:each) do
158
- @category.stub! :exact => (@exact = stub :exact)
159
- @category.stub! :partial => (@partial = stub :partial)
158
+ @category.stub! :indexed_exact => (@exact = stub :exact)
159
+ @category.stub! :indexed_partial => (@partial = stub :partial)
160
160
  end
161
161
  describe 'bundle_for' do
162
162
  it 'should return the right bundle' do
@@ -1,16 +1,16 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Indexing::Category do
3
+ describe Category do
4
4
 
5
5
  before(:each) do
6
- @index = stub :index, :name => :some_index, :bundle_class => nil
6
+ @index = Index::Memory.new :some_index, source: []
7
7
  @source = stub :some_given_source, :key_format => nil
8
8
  end
9
9
  let(:category) { described_class.new(:some_category, @index, :source => @source).tap { |c| c.stub! :timed_exclaim } }
10
10
 
11
11
  context "unit specs" do
12
- let(:exact) { category.exact }
13
- let(:partial) { category.partial }
12
+ let(:exact) { category.indexing_exact }
13
+ let(:partial) { category.indexing_partial }
14
14
 
15
15
  describe 'backup_caches' do
16
16
  it 'delegates to both bundles' do
@@ -134,7 +134,7 @@ describe Internals::Indexing::Category do
134
134
  end
135
135
  context 'it has an index' do
136
136
  before(:each) do
137
- category.stub! :index => stub(:index, :key_format => :yet_another_key_format)
137
+ category.instance_variable_set :@index, stub(:index, :key_format => :yet_another_key_format)
138
138
  end
139
139
  it 'returns that key_format' do
140
140
  category.key_format.should == :yet_another_key_format
@@ -159,7 +159,7 @@ describe Internals::Indexing::Category do
159
159
  end
160
160
  end
161
161
 
162
- describe "cache!" do
162
+ describe "cache" do
163
163
  before(:each) do
164
164
  category.stub! :generate_caches
165
165
  category.stub! :configure
@@ -167,12 +167,12 @@ describe Internals::Indexing::Category do
167
167
  it "prepares the cache directory" do
168
168
  category.should_receive(:prepare_index_directory).once.with
169
169
 
170
- category.cache!
170
+ category.cache
171
171
  end
172
172
  it "tells the indexer to index" do
173
173
  category.should_receive(:generate_caches).once.with
174
174
 
175
- category.cache!
175
+ category.cache
176
176
  end
177
177
  end
178
178
  describe "index" do
@@ -183,12 +183,12 @@ describe Internals::Indexing::Category do
183
183
  it "prepares the cache directory" do
184
184
  category.should_receive(:prepare_index_directory).once.with
185
185
 
186
- category.index!
186
+ category.prepare
187
187
  end
188
188
  it "tells the indexer to index" do
189
189
  @indexer.should_receive(:index).once.with
190
190
 
191
- category.index!
191
+ category.prepare
192
192
  end
193
193
  end
194
194
  describe "source" do
File without changes
@@ -2,7 +2,7 @@
2
2
  #
3
3
  require 'spec_helper'
4
4
 
5
- describe Internals::FrontendAdapters::Rack do
5
+ describe FrontendAdapters::Rack do
6
6
 
7
7
  before(:each) do
8
8
  @rack_adapter = described_class.new
@@ -188,7 +188,7 @@ describe Internals::FrontendAdapters::Rack do
188
188
  @rack_adapter.route %r{regexp1} => :query1, %r{regexp2} => :query2, :some => :option
189
189
  end
190
190
  it 'does not accept nil queries' do
191
- lambda { @rack_adapter.route %r{some/regexp} => nil }.should raise_error(Internals::FrontendAdapters::Rack::RouteTargetNilError, /Routing for \/some\\\/regexp\/ was defined with a nil target object, i.e. \/some\\\/regexp\/ => nil./)
191
+ lambda { @rack_adapter.route %r{some/regexp} => nil }.should raise_error(FrontendAdapters::Rack::RouteTargetNilError, /Routing for \/some\\\/regexp\/ was defined with a nil target object, i.e. \/some\\\/regexp\/ => nil./)
192
192
  end
193
193
  end
194
194
 
@@ -202,7 +202,7 @@ describe Internals::FrontendAdapters::Rack do
202
202
 
203
203
  describe 'route_one' do
204
204
  before(:each) do
205
- Internals::Adapters::Rack.stub! :app_for => :some_query_app
205
+ Adapters::Rack.stub! :app_for => :some_query_app
206
206
  end
207
207
  it 'should add the right route' do
208
208
  @routes.should_receive(:add_route).once.with :some_query_app, { :request_method => "GET", :path_info => /some_url/ }, {}, "some_query"
@@ -223,7 +223,7 @@ describe Internals::FrontendAdapters::Rack do
223
223
 
224
224
  describe 'default' do
225
225
  it 'should call answer' do
226
- @rack_adapter.should_receive(:answer).once.with nil, Internals::FrontendAdapters::Rack::STATUSES[200]
226
+ @rack_adapter.should_receive(:answer).once.with nil, FrontendAdapters::Rack::STATUSES[200]
227
227
 
228
228
  @rack_adapter.default 200
229
229
  end
@@ -231,21 +231,21 @@ describe Internals::FrontendAdapters::Rack do
231
231
 
232
232
  describe 'STATUSES' do
233
233
  it 'is a lambda' do
234
- Internals::FrontendAdapters::Rack::STATUSES[200].respond_to?(:call).should == true
234
+ FrontendAdapters::Rack::STATUSES[200].respond_to?(:call).should == true
235
235
  end
236
236
  it 'is a lambda' do
237
- Internals::FrontendAdapters::Rack::STATUSES[404].respond_to?(:call).should == true
237
+ FrontendAdapters::Rack::STATUSES[404].respond_to?(:call).should == true
238
238
  end
239
239
  end
240
240
 
241
241
  describe 'root' do
242
242
  it 'should call answer' do
243
- @rack_adapter.should_receive(:answer).once.with %r{^/$}, Internals::FrontendAdapters::Rack::STATUSES[200]
243
+ @rack_adapter.should_receive(:answer).once.with %r{^/$}, FrontendAdapters::Rack::STATUSES[200]
244
244
 
245
245
  @rack_adapter.root 200
246
246
  end
247
247
  it 'should call answer' do
248
- @rack_adapter.should_receive(:answer).once.with %r{^/$}, Internals::FrontendAdapters::Rack::STATUSES[404]
248
+ @rack_adapter.should_receive(:answer).once.with %r{^/$}, FrontendAdapters::Rack::STATUSES[404]
249
249
 
250
250
  @rack_adapter.root 404
251
251
  end
@@ -274,14 +274,14 @@ describe Internals::FrontendAdapters::Rack do
274
274
  context 'without app' do
275
275
  context 'with url' do
276
276
  it 'should use the 200 with default_options from the url' do
277
- @routes.should_receive(:add_route).once.with Internals::FrontendAdapters::Rack::STATUSES[200], { :request_method => "GET", :path_info => /some_url/ }
277
+ @routes.should_receive(:add_route).once.with FrontendAdapters::Rack::STATUSES[200], { :request_method => "GET", :path_info => /some_url/ }
278
278
 
279
279
  @rack_adapter.answer 'some_url'
280
280
  end
281
281
  end
282
282
  context 'without url' do
283
283
  it 'should use the 200 with default_options' do
284
- @routes.should_receive(:add_route).once.with Internals::FrontendAdapters::Rack::STATUSES[200], { :request_method => "GET" }
284
+ @routes.should_receive(:add_route).once.with FrontendAdapters::Rack::STATUSES[200], { :request_method => "GET" }
285
285
 
286
286
  @rack_adapter.answer
287
287
  end
@@ -3,13 +3,13 @@ require 'spec_helper'
3
3
  describe 'aliases' do
4
4
 
5
5
  it 'aliases correctly' do
6
- Partial.should == Internals::Generators::Partial
6
+ Partial.should == Generators::Partial
7
7
  end
8
8
  it 'aliases correctly' do
9
- Similarity.should == Internals::Generators::Similarity
9
+ Similarity.should == Generators::Similarity
10
10
  end
11
11
  it 'aliases correctly' do
12
- Weights.should == Internals::Generators::Weights
12
+ Weights.should == Generators::Weights
13
13
  end
14
14
 
15
15
  end
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Generators::Strategy do
3
+ describe Generators::Strategy do
4
4
 
5
5
  describe "saved?" do
6
6
  it "returns the right answer" do
@@ -1,11 +1,11 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Generators::Partial::Default do
3
+ describe Generators::Partial::Default do
4
4
 
5
- let(:default) { Internals::Generators::Partial::Default }
5
+ let(:default) { Generators::Partial::Default }
6
6
 
7
7
  it "should be a subtoken" do
8
- default.should be_kind_of(Internals::Generators::Partial::Substring)
8
+ default.should be_kind_of(Generators::Partial::Substring)
9
9
  end
10
10
  it "should be a the right down to" do
11
11
  default.from.should == -3
@@ -1,12 +1,12 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Generators::Partial::None do
3
+ describe Generators::Partial::None do
4
4
 
5
5
  it 'is not saved' do
6
6
  described_class.new.saved?.should == false
7
7
  end
8
8
  it "has the right superclass" do
9
- described_class.should < Internals::Generators::Partial::Strategy
9
+ described_class.should < Generators::Partial::Strategy
10
10
  end
11
11
  it "returns an empty index" do
12
12
  described_class.new.generate_from(:unimportant).should == {}
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Generators::Partial::Substring do
3
+ describe Generators::Partial::Substring do
4
4
 
5
5
  context 'default from' do
6
6
  let(:generator) { described_class.new }
@@ -1,12 +1,12 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Generators::PartialGenerator do
3
+ describe Generators::PartialGenerator do
4
4
 
5
5
  context 'integration' do
6
6
  it 'should generate the correct values with a given strategy' do
7
7
  generator = described_class.new :meier => [1], :maier => [2]
8
8
 
9
- generator.generate(Internals::Generators::Partial::Substring.new).should == {
9
+ generator.generate(Generators::Partial::Substring.new).should == {
10
10
  :meier => [1],
11
11
  :meie => [1],
12
12
  :mei => [1],
@@ -21,7 +21,7 @@ describe Internals::Generators::PartialGenerator do
21
21
  it 'should generate the correct values with a given specific strategy' do
22
22
  generator = described_class.new :meier => [1], :maier => [2]
23
23
 
24
- generator.generate(Internals::Generators::Partial::Substring.new(:from => 3)).should == {
24
+ generator.generate(Generators::Partial::Substring.new(:from => 3)).should == {
25
25
  :meier => [1],
26
26
  :meie => [1],
27
27
  :mei => [1],
@@ -2,7 +2,7 @@
2
2
  #
3
3
  require 'spec_helper'
4
4
 
5
- describe Internals::Generators::Similarity::DoubleMetaphone do
5
+ describe Generators::Similarity::DoubleMetaphone do
6
6
 
7
7
  before(:each) do
8
8
  @similarity = described_class.new
@@ -2,7 +2,7 @@
2
2
  #
3
3
  require 'spec_helper'
4
4
 
5
- describe Internals::Generators::Similarity::Metaphone do
5
+ describe Generators::Similarity::Metaphone do
6
6
 
7
7
  before(:each) do
8
8
  @similarity = described_class.new
@@ -2,7 +2,7 @@
2
2
  #
3
3
  require 'spec_helper'
4
4
 
5
- describe Internals::Generators::Similarity::None do
5
+ describe Generators::Similarity::None do
6
6
 
7
7
  before(:each) do
8
8
  @similarity = described_class.new
@@ -2,7 +2,7 @@
2
2
  #
3
3
  require 'spec_helper'
4
4
 
5
- describe Internals::Generators::Similarity::Phonetic do
5
+ describe Generators::Similarity::Phonetic do
6
6
 
7
7
  it 'raises if you try to use Phonetic directly' do
8
8
  expect {
@@ -2,7 +2,7 @@
2
2
  #
3
3
  require 'spec_helper'
4
4
 
5
- describe Internals::Generators::Similarity::Soundex do
5
+ describe Generators::Similarity::Soundex do
6
6
 
7
7
  before(:each) do
8
8
  @similarity = described_class.new
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Generators::SimilarityGenerator do
3
+ describe Generators::SimilarityGenerator do
4
4
 
5
5
  context 'integration' do
6
6
  it 'should generate the correct values' do
@@ -15,7 +15,7 @@ describe Internals::Generators::SimilarityGenerator do
15
15
  :meyer => nil,
16
16
  :peter => nil
17
17
 
18
- generator.generate(Internals::Generators::Similarity::DoubleMetaphone.new).should == { :MR => [:meier, :maier, :mayer, :meyer], :PTR => [:peter] }
18
+ generator.generate(Generators::Similarity::DoubleMetaphone.new).should == { :MR => [:meier, :maier, :mayer, :meyer], :PTR => [:peter] }
19
19
  end
20
20
  end
21
21
 
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Generators::Weights::Logarithmic do
3
+ describe Generators::Weights::Logarithmic do
4
4
 
5
5
  before(:each) do
6
6
  @cacher = described_class.new
@@ -1,14 +1,14 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Generators::WeightsGenerator do
3
+ describe Generators::WeightsGenerator do
4
4
 
5
5
  context 'integration' do
6
6
  it 'should generate the correct values' do
7
7
  generator = described_class.new :a => Array.new(0),
8
- :b => Array.new(1),
9
- :c => Array.new(10),
10
- :d => Array.new(100),
11
- :e => Array.new(1000)
8
+ :b => Array.new(1),
9
+ :c => Array.new(10),
10
+ :d => Array.new(100),
11
+ :e => Array.new(1000)
12
12
 
13
13
  result = generator.generate
14
14
 
@@ -1,10 +1,10 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Internals::Indexed::Index do
3
+ describe Index::Base do
4
4
 
5
5
  context 'without stubbed categories' do
6
6
  before(:each) do
7
- @index = described_class.new :some_index_name
7
+ @index = described_class.new :some_index_name, source: []
8
8
  end
9
9
 
10
10
  describe 'define_category' do
@@ -14,7 +14,7 @@ describe Internals::Indexed::Index do
14
14
  @index.categories.categories.size.should == 1
15
15
  end
16
16
  it 'returns the new category' do
17
- @index.define_category(:some_category_name).should be_kind_of(Internals::Indexed::Category)
17
+ @index.define_category(:some_category_name).should be_kind_of(Category)
18
18
  end
19
19
  end
20
20
  end
@@ -23,7 +23,7 @@ describe Internals::Indexed::Index do
23
23
  before(:each) do
24
24
  @categories = stub :categories
25
25
 
26
- @index = described_class.new :some_name
26
+ @index = described_class.new :some_name, source: []
27
27
  @index.define_category :some_category_name1
28
28
  @index.define_category :some_category_name2
29
29
 
@@ -48,7 +48,7 @@ describe Internals::Indexed::Index do
48
48
 
49
49
  context "no categories" do
50
50
  it "works" do
51
- described_class.new :some_name
51
+ described_class.new :some_name, source: []
52
52
  end
53
53
  end
54
54