searchlogic 2.5.15 → 2.5.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/Gemfile.lock +4 -2
- data/lib/searchlogic/named_scopes/association_conditions.rb +2 -2
- data/lib/searchlogic/version.rb +1 -1
- data/searchlogic.gemspec +1 -0
- data/spec/searchlogic/named_scopes/association_conditions_spec.rb +21 -1
- data/spec/spec_helper.rb +1 -0
- metadata +16 -3
- data/searchlogic-2.5.13.gem +0 -0
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NTZhMTNmZDNiMDlkZjcyZjI5MmI2ZjE1OWY3M2IxMmI5NTI0MzQ1OA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZDIzMjY3N2RiNmJiZWU5MmIzOTQwODFlNWYxMDRhOWQ5YTk5NjZmYw==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
Zjg0NWI3OWFiOGY3NTY1YzJhYWM0ZjRmNGZlY2IwYjI3MGI0ZGMyNTVjZDI0
|
10
|
+
YTIyN2NlNjE2MjRlYjg3YTYyYmY3NzdkZDNjNGMxMzJiYjIwMDRmNGQ4Njc1
|
11
|
+
NTM1YWQ3NWRjYzMxMmFjNmIwNTJhNTI1MTkwY2I1NjBlZTc1MmE=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ODcyMTk3YTNmODY0NTRjN2Q1MmY4YmUxMzVhOTBmMmZmYjFjYTQ0YzAwOTA0
|
14
|
+
NWFjNGMzNTg5ZTVkYjQyNmI3ZmJlN2I3MTY4MTY0YWRkMmM3YWQ0NjViY2Qy
|
15
|
+
MTU2OTkzZTU2MTU2ZjNjZmVhNDhkNTcyYjRjNmE3YWNjN2UyOTM=
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
searchlogic (2.5.
|
4
|
+
searchlogic (2.5.15)
|
5
5
|
activerecord (~> 2.3.12)
|
6
6
|
activesupport (~> 2.3.12)
|
7
7
|
|
@@ -16,7 +16,7 @@ GEM
|
|
16
16
|
rake
|
17
17
|
coderay (1.1.0)
|
18
18
|
method_source (0.8.2)
|
19
|
-
pry (0.9.12.
|
19
|
+
pry (0.9.12.4)
|
20
20
|
coderay (~> 1.0)
|
21
21
|
method_source (~> 0.8)
|
22
22
|
slop (~> 3.4)
|
@@ -24,6 +24,7 @@ GEM
|
|
24
24
|
rspec (1.3.2)
|
25
25
|
slop (3.4.7)
|
26
26
|
sqlite3 (1.3.8)
|
27
|
+
timecop (0.5.9.2)
|
27
28
|
|
28
29
|
PLATFORMS
|
29
30
|
ruby
|
@@ -34,3 +35,4 @@ DEPENDENCIES
|
|
34
35
|
rspec (~> 1.3.1)
|
35
36
|
searchlogic!
|
36
37
|
sqlite3
|
38
|
+
timecop (~> 0.5.9.1)
|
@@ -12,7 +12,7 @@ module Searchlogic
|
|
12
12
|
end
|
13
13
|
|
14
14
|
# We need to try and create other conditions first so that we give priority to conflicting names.
|
15
|
-
# Such as having a column
|
15
|
+
# Such as having a column name with the exact same name as an association condition.
|
16
16
|
def create_condition(name)
|
17
17
|
if result = super
|
18
18
|
result
|
@@ -62,7 +62,7 @@ module Searchlogic
|
|
62
62
|
raise ArgumentError.new("The #{klass} class does not respond to the #{association_condition} scope") if !klass.respond_to?(association_condition)
|
63
63
|
arity = klass.named_scope_arity(association_condition)
|
64
64
|
|
65
|
-
if !arity
|
65
|
+
if !arity
|
66
66
|
# The underlying condition doesn't require any parameters, so let's just create a simple
|
67
67
|
# named scope that is based on a hash.
|
68
68
|
options = {}
|
data/lib/searchlogic/version.rb
CHANGED
data/searchlogic.gemspec
CHANGED
@@ -15,6 +15,7 @@ Gem::Specification.new do |s|
|
|
15
15
|
s.add_dependency 'activerecord', '~> 2.3.12'
|
16
16
|
s.add_dependency 'activesupport', '~> 2.3.12'
|
17
17
|
s.add_development_dependency 'rspec', '~> 1.3.1'
|
18
|
+
s.add_development_dependency 'timecop', '~> 0.5.9.1'
|
18
19
|
s.add_development_dependency 'sqlite3'
|
19
20
|
s.add_development_dependency 'appraisal', '0.4.1'
|
20
21
|
s.add_development_dependency 'pry'
|
@@ -209,7 +209,7 @@ describe Searchlogic::NamedScopes::AssociationConditions do
|
|
209
209
|
user.orders.count.should == 1
|
210
210
|
user.orders.shipped_on_not_null.shipped_on_greater_than(2.days.ago).count.should == 1
|
211
211
|
end
|
212
|
-
|
212
|
+
|
213
213
|
it "should allow chained dynamic scopes without losing association scope conditions" do
|
214
214
|
user = User.create
|
215
215
|
order1 = Order.create :user => user, :shipped_on => Time.now, :total => 2
|
@@ -218,6 +218,26 @@ describe Searchlogic::NamedScopes::AssociationConditions do
|
|
218
218
|
user.orders.id_equals(order1.id).total_equals(2).count.should == 1
|
219
219
|
end
|
220
220
|
|
221
|
+
it "shouldn't cache the lambda of a named_scope for a chained association" do
|
222
|
+
user = User.create
|
223
|
+
Order.create :user => user, :shipped_on => Time.current
|
224
|
+
|
225
|
+
# create the named_scope and use it through a chained association
|
226
|
+
Order.named_scope :shipped, lambda { {:conditions => ["shipped_on <= ?", Time.current]} }
|
227
|
+
User.orders_shipped
|
228
|
+
|
229
|
+
# simulate a day passing after the chained scope is first used
|
230
|
+
Timecop.travel(Date.tomorrow)
|
231
|
+
|
232
|
+
# make a new object that is active on our simulated day
|
233
|
+
Order.create :user => user, :shipped_on => Time.current
|
234
|
+
|
235
|
+
# we have 2 orders and both were shipped on or before the current time,
|
236
|
+
# so both should be included in the scope
|
237
|
+
user.orders.count.should == 2
|
238
|
+
User.orders_shipped.count.should == 2
|
239
|
+
end
|
240
|
+
|
221
241
|
it "should allow Marshal.dump on objects that only have polymorphic associations where a polymorphic association is loaded" do
|
222
242
|
audit = Audit.create
|
223
243
|
audit.auditable = User.create
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: searchlogic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.5.
|
4
|
+
version: 2.5.16
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ben Johnson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -52,6 +52,20 @@ dependencies:
|
|
52
52
|
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 1.3.1
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: timecop
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 0.5.9.1
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 0.5.9.1
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: sqlite3
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -146,7 +160,6 @@ files:
|
|
146
160
|
- lib/searchlogic/search/unknown_condition_error.rb
|
147
161
|
- lib/searchlogic/version.rb
|
148
162
|
- rails/init.rb
|
149
|
-
- searchlogic-2.5.13.gem
|
150
163
|
- searchlogic.gemspec
|
151
164
|
- spec/searchlogic/active_record/association_proxy_spec.rb
|
152
165
|
- spec/searchlogic/active_record/consistency_spec.rb
|
data/searchlogic-2.5.13.gem
DELETED
Binary file
|