picky 2.5.2 → 2.6.0
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/picky/adapters/rack/base.rb +23 -0
- data/lib/picky/adapters/rack/live_parameters.rb +33 -0
- data/lib/picky/adapters/rack/query.rb +65 -0
- data/lib/picky/adapters/rack.rb +30 -0
- data/lib/picky/application.rb +5 -5
- data/lib/picky/backend/backend.rb +108 -0
- data/lib/picky/backend/file/basic.rb +101 -0
- data/lib/picky/backend/file/json.rb +34 -0
- data/lib/picky/backend/file/marshal.rb +34 -0
- data/lib/picky/backend/file/text.rb +56 -0
- data/lib/picky/backend/files.rb +30 -0
- data/lib/picky/backend/redis/basic.rb +85 -0
- data/lib/picky/backend/redis/list_hash.rb +49 -0
- data/lib/picky/backend/redis/string_hash.rb +40 -0
- data/lib/picky/backend/redis.rb +40 -0
- data/lib/picky/calculations/location.rb +57 -0
- data/lib/picky/categories.rb +62 -0
- data/lib/picky/categories_indexed.rb +93 -0
- data/lib/picky/categories_indexing.rb +12 -0
- data/lib/picky/category.rb +127 -0
- data/lib/picky/category_indexed.rb +64 -0
- data/lib/picky/category_indexing.rb +145 -0
- data/lib/picky/{internals/ext → ext}/maybe_compile.rb +0 -0
- data/lib/picky/{internals/ext → ext}/ruby19/extconf.rb +0 -0
- data/lib/picky/{internals/ext → ext}/ruby19/performant.c +0 -0
- data/lib/picky/{internals/extensions → extensions}/array.rb +0 -0
- data/lib/picky/extensions/class.rb +11 -0
- data/lib/picky/{internals/extensions → extensions}/hash.rb +0 -0
- data/lib/picky/{internals/extensions → extensions}/module.rb +0 -0
- data/lib/picky/{internals/extensions → extensions}/object.rb +0 -0
- data/lib/picky/{internals/extensions → extensions}/symbol.rb +0 -0
- data/lib/picky/frontend_adapters/rack.rb +146 -0
- data/lib/picky/generators/aliases.rb +3 -3
- data/lib/picky/generators/base.rb +15 -0
- data/lib/picky/generators/partial/default.rb +5 -0
- data/lib/picky/generators/partial/none.rb +31 -0
- data/lib/picky/generators/partial/strategy.rb +25 -0
- data/lib/picky/generators/partial/substring.rb +118 -0
- data/lib/picky/generators/partial_generator.rb +15 -0
- data/lib/picky/generators/similarity/default.rb +7 -0
- data/lib/picky/generators/similarity/double_metaphone.rb +28 -0
- data/lib/picky/generators/similarity/metaphone.rb +28 -0
- data/lib/picky/generators/similarity/none.rb +31 -0
- data/lib/picky/generators/similarity/phonetic.rb +65 -0
- data/lib/picky/generators/similarity/soundex.rb +28 -0
- data/lib/picky/generators/similarity/strategy.rb +9 -0
- data/lib/picky/generators/similarity_generator.rb +15 -0
- data/lib/picky/generators/strategy.rb +14 -0
- data/lib/picky/generators/weights/default.rb +7 -0
- data/lib/picky/generators/weights/logarithmic.rb +39 -0
- data/lib/picky/generators/weights/strategy.rb +9 -0
- data/lib/picky/generators/weights_generator.rb +15 -0
- data/lib/picky/{internals/helpers → helpers}/measuring.rb +0 -0
- data/lib/picky/index/base.rb +119 -104
- data/lib/picky/index/base_indexed.rb +27 -0
- data/lib/picky/index/base_indexing.rb +119 -0
- data/lib/picky/index/memory.rb +6 -18
- data/lib/picky/index/redis.rb +6 -18
- data/lib/picky/indexed/bundle/base.rb +110 -0
- data/lib/picky/indexed/bundle/memory.rb +91 -0
- data/lib/picky/indexed/bundle/redis.rb +45 -0
- data/lib/picky/indexed/wrappers/bundle/calculation.rb +35 -0
- data/lib/picky/indexed/wrappers/bundle/location.rb +42 -0
- data/lib/picky/indexed/wrappers/bundle/wrapper.rb +43 -0
- data/lib/picky/indexed/wrappers/category/location.rb +25 -0
- data/lib/picky/indexed/wrappers/exact_first.rb +55 -0
- data/lib/picky/{internals/indexers → indexers}/base.rb +0 -0
- data/lib/picky/{internals/indexers → indexers}/parallel.rb +0 -0
- data/lib/picky/{internals/indexers → indexers}/serial.rb +0 -0
- data/lib/picky/{internals/indexers → indexers}/solr.rb +0 -0
- data/lib/picky/indexes.rb +73 -0
- data/lib/picky/indexes_indexed.rb +29 -0
- data/lib/picky/indexes_indexing.rb +49 -0
- data/lib/picky/indexing/bundle/base.rb +212 -0
- data/lib/picky/indexing/bundle/memory.rb +25 -0
- data/lib/picky/indexing/bundle/redis.rb +24 -0
- data/lib/picky/indexing/bundle/super_base.rb +61 -0
- data/lib/picky/indexing/wrappers/category/location.rb +25 -0
- data/lib/picky/interfaces/live_parameters.rb +8 -8
- data/lib/picky/loader.rb +89 -95
- data/lib/picky/{internals/performant.rb → performant.rb} +0 -0
- data/lib/picky/query/allocation.rb +84 -0
- data/lib/picky/query/allocations.rb +114 -0
- data/lib/picky/query/combination.rb +76 -0
- data/lib/picky/query/combinations/base.rb +70 -0
- data/lib/picky/query/combinations/memory.rb +48 -0
- data/lib/picky/query/combinations/redis.rb +86 -0
- data/lib/picky/query/indexes.rb +195 -0
- data/lib/picky/query/qualifiers.rb +76 -0
- data/lib/picky/query/token.rb +198 -0
- data/lib/picky/query/tokens.rb +103 -0
- data/lib/picky/{internals/query → query}/weights.rb +0 -0
- data/lib/picky/results.rb +1 -1
- data/lib/picky/search.rb +6 -6
- data/lib/picky/{internals/solr → solr}/schema_generator.rb +0 -0
- data/lib/picky/sources/db.rb +7 -7
- data/lib/picky/sources/wrappers/location.rb +2 -2
- data/lib/picky/tokenizers/base.rb +224 -0
- data/lib/picky/tokenizers/index.rb +30 -0
- data/lib/picky/tokenizers/location.rb +49 -0
- data/lib/picky/tokenizers/query.rb +55 -0
- data/lib/tasks/index.rake +4 -3
- data/lib/tasks/try.rake +2 -2
- data/spec/lib/{internals/adapters → adapters}/rack/base_spec.rb +1 -1
- data/spec/lib/{internals/adapters → adapters}/rack/live_parameters_spec.rb +1 -1
- data/spec/lib/{internals/adapters → adapters}/rack/query_spec.rb +1 -1
- data/spec/lib/application_spec.rb +3 -3
- data/spec/lib/{internals/index → backend}/file/basic_spec.rb +1 -1
- data/spec/lib/{internals/index → backend}/file/json_spec.rb +1 -1
- data/spec/lib/{internals/index → backend}/file/marshal_spec.rb +1 -1
- data/spec/lib/{internals/index → backend}/file/text_spec.rb +1 -1
- data/spec/lib/{internals/index → backend}/files_spec.rb +3 -3
- data/spec/lib/{internals/index → backend}/redis/basic_spec.rb +1 -1
- data/spec/lib/{internals/index → backend}/redis/list_hash_spec.rb +1 -1
- data/spec/lib/{internals/index → backend}/redis/string_hash_spec.rb +1 -1
- data/spec/lib/{internals/index → backend}/redis_spec.rb +11 -5
- data/spec/lib/{internals/calculations → calculations}/location_spec.rb +1 -1
- data/spec/lib/{internals/indexed/categories_spec.rb → categories_indexed_spec.rb} +10 -10
- data/spec/lib/{internals/indexed/category_spec.rb → category_indexed_spec.rb} +12 -12
- data/spec/lib/{internals/indexing/category_spec.rb → category_indexing_spec.rb} +10 -10
- data/spec/lib/{internals/cores_spec.rb → cores_spec.rb} +0 -0
- data/spec/lib/{internals/extensions → extensions}/array_spec.rb +0 -0
- data/spec/lib/{internals/extensions → extensions}/hash_spec.rb +0 -0
- data/spec/lib/{internals/extensions → extensions}/module_spec.rb +0 -0
- data/spec/lib/{internals/extensions → extensions}/object_spec.rb +0 -0
- data/spec/lib/{internals/extensions → extensions}/symbol_spec.rb +0 -0
- data/spec/lib/{internals/frontend_adapters → frontend_adapters}/rack_spec.rb +10 -10
- data/spec/lib/generators/aliases_spec.rb +3 -3
- data/spec/lib/{internals/generators → generators}/cacher_strategy_spec.rb +1 -1
- data/spec/lib/{internals/generators → generators}/partial/default_spec.rb +3 -3
- data/spec/lib/{internals/generators → generators}/partial/none_spec.rb +2 -2
- data/spec/lib/{internals/generators → generators}/partial/substring_spec.rb +1 -1
- data/spec/lib/{internals/generators → generators}/partial_generator_spec.rb +3 -3
- data/spec/lib/{internals/generators → generators}/similarity/double_metaphone_spec.rb +1 -1
- data/spec/lib/{internals/generators → generators}/similarity/metaphone_spec.rb +1 -1
- data/spec/lib/{internals/generators → generators}/similarity/none_spec.rb +1 -1
- data/spec/lib/{internals/generators → generators}/similarity/phonetic_spec.rb +1 -1
- data/spec/lib/{internals/generators → generators}/similarity/soundex_spec.rb +1 -1
- data/spec/lib/{internals/generators → generators}/similarity_generator_spec.rb +2 -2
- data/spec/lib/{internals/generators → generators}/weights/logarithmic_spec.rb +1 -1
- data/spec/lib/{internals/generators → generators}/weights_generator_spec.rb +5 -5
- data/spec/lib/{internals/helpers → helpers}/measuring_spec.rb +0 -0
- data/spec/lib/{internals/indexed/index_spec.rb → index/base_indexed_spec.rb} +5 -5
- data/spec/lib/{internals/indexing/index_spec.rb → index/base_indexing_spec.rb} +6 -19
- data/spec/lib/index/base_spec.rb +10 -53
- data/spec/lib/{internals/indexed → indexed}/bundle/memory_spec.rb +5 -5
- data/spec/lib/{internals/indexed → indexed}/bundle/redis_spec.rb +4 -4
- data/spec/lib/{internals/indexed → indexed}/wrappers/bundle/calculation_spec.rb +1 -1
- data/spec/lib/{internals/indexed → indexed}/wrappers/bundle/wrapper_spec.rb +1 -1
- data/spec/lib/{internals/indexed → indexed}/wrappers/exact_first_spec.rb +7 -7
- data/spec/lib/{internals/indexers → indexers}/base_spec.rb +0 -0
- data/spec/lib/{internals/indexers → indexers}/parallel_spec.rb +0 -0
- data/spec/lib/{internals/indexers → indexers}/serial_spec.rb +0 -0
- data/spec/lib/indexes_class_spec.rb +30 -0
- data/spec/lib/{indexed/indexes_spec.rb → indexes_indexed_spec.rb} +1 -1
- data/spec/lib/{indexing/indexes_spec.rb → indexes_indexing_spec.rb} +8 -8
- data/spec/lib/{internals/indexing/indexes_spec.rb → indexes_spec.rb} +15 -12
- data/spec/lib/{internals/indexing → indexing}/bundle/memory_partial_generation_speed_spec.rb +4 -4
- data/spec/lib/{internals/indexing → indexing}/bundle/memory_spec.rb +3 -3
- data/spec/lib/{internals/indexing → indexing}/bundle/redis_spec.rb +3 -3
- data/spec/lib/{internals/indexing → indexing}/bundle/super_base_spec.rb +2 -2
- data/spec/lib/{internals/interfaces → interfaces}/live_parameters_spec.rb +0 -0
- data/spec/lib/query/allocation_spec.rb +1 -1
- data/spec/lib/query/allocations_spec.rb +1 -1
- data/spec/lib/query/combination_spec.rb +5 -5
- data/spec/lib/query/combinations/base_spec.rb +1 -1
- data/spec/lib/query/combinations/memory_spec.rb +1 -1
- data/spec/lib/query/combinations/redis_spec.rb +1 -1
- data/spec/lib/query/indexes_spec.rb +1 -1
- data/spec/lib/query/qualifiers_spec.rb +4 -4
- data/spec/lib/query/token_spec.rb +3 -3
- data/spec/lib/query/tokens_spec.rb +32 -32
- data/spec/lib/search_spec.rb +5 -5
- data/spec/lib/{internals/solr → solr}/schema_generator_spec.rb +0 -0
- data/spec/lib/sources/db_spec.rb +4 -8
- data/spec/lib/sources/wrappers/location_spec.rb +1 -1
- data/spec/lib/{internals/tokenizers → tokenizers}/base_spec.rb +1 -1
- data/spec/lib/{internals/tokenizers → tokenizers}/index_spec.rb +1 -1
- data/spec/lib/{internals/tokenizers → tokenizers}/query_spec.rb +1 -1
- metadata +214 -215
- data/lib/picky/aliases.rb +0 -4
- data/lib/picky/index_bundle.rb +0 -48
- data/lib/picky/indexed/indexes.rb +0 -59
- data/lib/picky/indexing/indexes.rb +0 -87
- data/lib/picky/internals/adapters/rack/base.rb +0 -27
- data/lib/picky/internals/adapters/rack/live_parameters.rb +0 -37
- data/lib/picky/internals/adapters/rack/query.rb +0 -69
- data/lib/picky/internals/adapters/rack.rb +0 -34
- data/lib/picky/internals/calculations/location.rb +0 -59
- data/lib/picky/internals/frontend_adapters/rack.rb +0 -150
- data/lib/picky/internals/generators/base.rb +0 -19
- data/lib/picky/internals/generators/partial/default.rb +0 -7
- data/lib/picky/internals/generators/partial/none.rb +0 -35
- data/lib/picky/internals/generators/partial/strategy.rb +0 -29
- data/lib/picky/internals/generators/partial/substring.rb +0 -122
- data/lib/picky/internals/generators/partial_generator.rb +0 -19
- data/lib/picky/internals/generators/similarity/default.rb +0 -9
- data/lib/picky/internals/generators/similarity/double_metaphone.rb +0 -32
- data/lib/picky/internals/generators/similarity/metaphone.rb +0 -32
- data/lib/picky/internals/generators/similarity/none.rb +0 -35
- data/lib/picky/internals/generators/similarity/phonetic.rb +0 -69
- data/lib/picky/internals/generators/similarity/soundex.rb +0 -32
- data/lib/picky/internals/generators/similarity/strategy.rb +0 -11
- data/lib/picky/internals/generators/similarity_generator.rb +0 -19
- data/lib/picky/internals/generators/strategy.rb +0 -18
- data/lib/picky/internals/generators/weights/default.rb +0 -9
- data/lib/picky/internals/generators/weights/logarithmic.rb +0 -43
- data/lib/picky/internals/generators/weights/strategy.rb +0 -11
- data/lib/picky/internals/generators/weights_generator.rb +0 -19
- data/lib/picky/internals/index/backend.rb +0 -112
- data/lib/picky/internals/index/file/basic.rb +0 -105
- data/lib/picky/internals/index/file/json.rb +0 -38
- data/lib/picky/internals/index/file/marshal.rb +0 -38
- data/lib/picky/internals/index/file/text.rb +0 -60
- data/lib/picky/internals/index/files.rb +0 -34
- data/lib/picky/internals/index/redis/basic.rb +0 -89
- data/lib/picky/internals/index/redis/list_hash.rb +0 -53
- data/lib/picky/internals/index/redis/string_hash.rb +0 -44
- data/lib/picky/internals/index/redis.rb +0 -44
- data/lib/picky/internals/indexed/bundle/base.rb +0 -114
- data/lib/picky/internals/indexed/bundle/memory.rb +0 -95
- data/lib/picky/internals/indexed/bundle/redis.rb +0 -49
- data/lib/picky/internals/indexed/categories.rb +0 -140
- data/lib/picky/internals/indexed/category.rb +0 -111
- data/lib/picky/internals/indexed/index.rb +0 -63
- data/lib/picky/internals/indexed/wrappers/bundle/calculation.rb +0 -37
- data/lib/picky/internals/indexed/wrappers/bundle/location.rb +0 -44
- data/lib/picky/internals/indexed/wrappers/bundle/wrapper.rb +0 -45
- data/lib/picky/internals/indexed/wrappers/category/location.rb +0 -27
- data/lib/picky/internals/indexed/wrappers/exact_first.rb +0 -59
- data/lib/picky/internals/indexing/bundle/base.rb +0 -216
- data/lib/picky/internals/indexing/bundle/memory.rb +0 -29
- data/lib/picky/internals/indexing/bundle/redis.rb +0 -28
- data/lib/picky/internals/indexing/bundle/super_base.rb +0 -65
- data/lib/picky/internals/indexing/category.rb +0 -153
- data/lib/picky/internals/indexing/index.rb +0 -142
- data/lib/picky/internals/indexing/wrappers/category/location.rb +0 -27
- data/lib/picky/internals/query/allocation.rb +0 -88
- data/lib/picky/internals/query/allocations.rb +0 -118
- data/lib/picky/internals/query/combination.rb +0 -80
- data/lib/picky/internals/query/combinations/base.rb +0 -74
- data/lib/picky/internals/query/combinations/memory.rb +0 -52
- data/lib/picky/internals/query/combinations/redis.rb +0 -90
- data/lib/picky/internals/query/indexes.rb +0 -199
- data/lib/picky/internals/query/qualifiers.rb +0 -82
- data/lib/picky/internals/query/token.rb +0 -202
- data/lib/picky/internals/query/tokens.rb +0 -109
- data/lib/picky/internals/shared/category.rb +0 -52
- data/lib/picky/internals/tokenizers/base.rb +0 -228
- data/lib/picky/internals/tokenizers/index.rb +0 -34
- data/lib/picky/internals/tokenizers/location.rb +0 -54
- data/lib/picky/internals/tokenizers/query.rb +0 -59
- data/lib/picky/internals.rb +0 -2
- data/spec/lib/aliases_spec.rb +0 -9
- data/spec/lib/index_bundle_spec.rb +0 -69
@@ -1,20 +1,20 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe
|
3
|
+
describe Query::Tokens do
|
4
4
|
|
5
5
|
before(:all) do
|
6
|
-
|
7
|
-
|
6
|
+
Query::Qualifiers.instance << Query::Qualifier.new(:specific, [:sp, :spec])
|
7
|
+
Query::Qualifiers.instance.prepare
|
8
8
|
end
|
9
9
|
|
10
10
|
describe '.processed' do
|
11
11
|
it 'generates processed tokens from all words' do
|
12
12
|
expected = [
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
13
|
+
Query::Token.processed('this~'),
|
14
|
+
Query::Token.processed('is'),
|
15
|
+
Query::Token.processed('a'),
|
16
|
+
Query::Token.processed('sp:solr'),
|
17
|
+
Query::Token.processed('query"')
|
18
18
|
]
|
19
19
|
|
20
20
|
described_class.should_receive(:new).once.with expected
|
@@ -23,11 +23,11 @@ describe Internals::Query::Tokens do
|
|
23
23
|
end
|
24
24
|
it 'generates processed tokens from all words' do
|
25
25
|
expected = [
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
26
|
+
Query::Token.processed('this~', false),
|
27
|
+
Query::Token.processed('is', false),
|
28
|
+
Query::Token.processed('a', false),
|
29
|
+
Query::Token.processed('sp:solr', false),
|
30
|
+
Query::Token.processed('query"', false)
|
31
31
|
]
|
32
32
|
|
33
33
|
described_class.should_receive(:new).once.with expected
|
@@ -52,7 +52,7 @@ describe Internals::Query::Tokens do
|
|
52
52
|
describe 'cap' do
|
53
53
|
context 'one token' do
|
54
54
|
before(:each) do
|
55
|
-
@token =
|
55
|
+
@token = Query::Token.processed 'Token'
|
56
56
|
@tokens = described_class.new [@token]
|
57
57
|
end
|
58
58
|
it 'does not cut it down' do
|
@@ -68,15 +68,15 @@ describe Internals::Query::Tokens do
|
|
68
68
|
end
|
69
69
|
context 'many tokens' do
|
70
70
|
before(:each) do
|
71
|
-
@first =
|
72
|
-
@second =
|
73
|
-
@third =
|
74
|
-
@tokens =
|
71
|
+
@first = Query::Token.processed 'Hello'
|
72
|
+
@second = Query::Token.processed 'I'
|
73
|
+
@third = Query::Token.processed 'Am'
|
74
|
+
@tokens = Query::Tokens.new [
|
75
75
|
@first,
|
76
76
|
@second,
|
77
77
|
@third,
|
78
|
-
|
79
|
-
|
78
|
+
Query::Token.processed('A'),
|
79
|
+
Query::Token.processed('Token')
|
80
80
|
]
|
81
81
|
end
|
82
82
|
it 'should cap the number of tokens' do
|
@@ -90,7 +90,7 @@ describe Internals::Query::Tokens do
|
|
90
90
|
describe 'partialize_last' do
|
91
91
|
context 'special case' do
|
92
92
|
before(:each) do
|
93
|
-
@token =
|
93
|
+
@token = Query::Token.processed 'a*'
|
94
94
|
@tokens = described_class.new [@token]
|
95
95
|
end
|
96
96
|
it 'should have a last partialized token' do
|
@@ -104,7 +104,7 @@ describe Internals::Query::Tokens do
|
|
104
104
|
end
|
105
105
|
context 'one token' do
|
106
106
|
before(:each) do
|
107
|
-
@token =
|
107
|
+
@token = Query::Token.processed 'Token'
|
108
108
|
@tokens = described_class.new [@token]
|
109
109
|
end
|
110
110
|
it 'should not have a last partialized token' do
|
@@ -118,13 +118,13 @@ describe Internals::Query::Tokens do
|
|
118
118
|
end
|
119
119
|
context 'many tokens' do
|
120
120
|
before(:each) do
|
121
|
-
@first =
|
122
|
-
@last =
|
121
|
+
@first = Query::Token.processed 'Hello'
|
122
|
+
@last = Query::Token.processed 'Token'
|
123
123
|
@tokens = described_class.new [
|
124
124
|
@first,
|
125
|
-
|
126
|
-
|
127
|
-
|
125
|
+
Query::Token.processed('I'),
|
126
|
+
Query::Token.processed('Am'),
|
127
|
+
Query::Token.processed('A'),
|
128
128
|
@last
|
129
129
|
]
|
130
130
|
end
|
@@ -178,11 +178,11 @@ describe Internals::Query::Tokens do
|
|
178
178
|
describe 'to_s' do
|
179
179
|
before(:each) do
|
180
180
|
@tokens = described_class.new [
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
181
|
+
Query::Token.processed('Hello~'),
|
182
|
+
Query::Token.processed('I~'),
|
183
|
+
Query::Token.processed('Am'),
|
184
|
+
Query::Token.processed('A*'),
|
185
|
+
Query::Token.processed('Token~')
|
186
186
|
]
|
187
187
|
end
|
188
188
|
it 'should work correctly' do
|
data/spec/lib/search_spec.rb
CHANGED
@@ -37,7 +37,7 @@ describe Search do
|
|
37
37
|
context 'no tokenizer predefined' do
|
38
38
|
let(:search) { described_class.new }
|
39
39
|
it 'returns the default tokenizer' do
|
40
|
-
search.tokenizer.should ==
|
40
|
+
search.tokenizer.should == Tokenizers::Query.default
|
41
41
|
end
|
42
42
|
end
|
43
43
|
context 'tokenizer predefined' do
|
@@ -62,13 +62,13 @@ describe Search do
|
|
62
62
|
let(:search) { described_class.new }
|
63
63
|
it 'returns a specific Combination for a specific input' do
|
64
64
|
some_source = stub(:source, :harvest => nil)
|
65
|
-
search.combinations_type_for([Index::Memory.new(:gu, source: some_source)]).should ==
|
65
|
+
search.combinations_type_for([Index::Memory.new(:gu, source: some_source)]).should == Query::Combinations::Memory
|
66
66
|
end
|
67
67
|
it 'just works on the same types' do
|
68
|
-
search.combinations_type_for([:blorf, :blarf]).should ==
|
68
|
+
search.combinations_type_for([:blorf, :blarf]).should == Query::Combinations::Memory
|
69
69
|
end
|
70
70
|
it 'just uses standard combinations' do
|
71
|
-
search.combinations_type_for([:blorf]).should ==
|
71
|
+
search.combinations_type_for([:blorf]).should == Query::Combinations::Memory
|
72
72
|
end
|
73
73
|
it 'raises on multiple types' do
|
74
74
|
expect do
|
@@ -132,7 +132,7 @@ describe Search do
|
|
132
132
|
|
133
133
|
describe 'to_s' do
|
134
134
|
before(:each) do
|
135
|
-
@
|
135
|
+
@index.stub! :name => :some_index
|
136
136
|
end
|
137
137
|
context 'with weights' do
|
138
138
|
before(:each) do
|
File without changes
|
data/spec/lib/sources/db_spec.rb
CHANGED
@@ -3,8 +3,6 @@ require 'spec_helper'
|
|
3
3
|
describe Sources::DB do
|
4
4
|
|
5
5
|
before(:each) do
|
6
|
-
@type = stub :type, :name => 'some_type_name'
|
7
|
-
|
8
6
|
@connection = stub :connection
|
9
7
|
@adapter = stub :adapter, :connection => @connection
|
10
8
|
|
@@ -24,8 +22,7 @@ describe Sources::DB do
|
|
24
22
|
|
25
23
|
describe "get_data" do
|
26
24
|
before(:each) do
|
27
|
-
@
|
28
|
-
@category = stub :category, :from => :some_category, :index => @index
|
25
|
+
@category = stub :category, :from => :some_category, :index_name => :some_index_name
|
29
26
|
end
|
30
27
|
context 'mysql' do
|
31
28
|
before(:each) do
|
@@ -88,20 +85,19 @@ describe Sources::DB do
|
|
88
85
|
result = stub(:result, :to_i => 12_345)
|
89
86
|
@connection.should_receive(:select_value).once.and_return(result)
|
90
87
|
|
91
|
-
@source.count
|
88
|
+
@source.count :anything
|
92
89
|
end
|
93
90
|
it "should get the id count" do
|
94
91
|
result = stub(:result, :to_i => 12_345)
|
95
92
|
@connection.should_receive(:select_value).once.with("SELECT COUNT(__picky_id) FROM picky_some_type_name_index")
|
96
93
|
|
97
|
-
@source.count
|
94
|
+
@source.count :some_type_name
|
98
95
|
end
|
99
96
|
end
|
100
97
|
|
101
98
|
describe 'harvest' do
|
102
99
|
before(:each) do
|
103
|
-
@
|
104
|
-
@category = stub :category, :name => :some_category, :index => @index
|
100
|
+
@category = stub :category, :name => :some_category, :index_name => :some_index
|
105
101
|
|
106
102
|
@source.should_receive(:get_data).any_number_of_times.and_return [[:some_id, 'some_text']].cycle
|
107
103
|
@source.stub! :count => 17
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
require 'spec_helper'
|
4
4
|
|
5
|
-
describe
|
5
|
+
describe Tokenizers::Base do
|
6
6
|
|
7
7
|
context 'with special instance' do
|
8
8
|
let (:tokenizer) { described_class.new reject_token_if: lambda { |token| token.to_s.length < 2 || token == :hello }, case_sensitive: true }
|