riveter 0.2.0 → 0.2.1
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 +4 -4
- data/Gemfile.lock +4 -7
- data/lib/generators/rspec/enquiry/templates/enquiry_spec.rb +1 -1
- data/lib/generators/rspec/query/templates/query_spec.rb +2 -2
- data/lib/riveter/core_extensions.rb +12 -7
- data/lib/riveter/enquiry.rb +1 -1
- data/lib/riveter/version.rb +1 -1
- data/lib/riveter.rb +0 -1
- data/riveter.gemspec +3 -6
- data/spec/riveter/core_extensions_spec.rb +2 -2
- data/spec/riveter/query_spec.rb +3 -3
- data/spec/spec_helper.rb +1 -0
- data/spec/support/validator_detector.rb +6 -2
- metadata +14 -56
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 89d184638bd46e4851c34befdaa1b8451312d210
|
|
4
|
+
data.tar.gz: b498d93ece35a0f8bb532fac557cc46de5b9976a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7e85400604b6388dccc7956461f9bed3c012927560d76a7edfdfbdb3db57f5d25a18e4e79736321bcf71694f48b8384151a6a81ef8531341f7e5d282990e8dcf
|
|
7
|
+
data.tar.gz: 91ea69d6ac1b17187741125ef6a42b111e7f835dbb0e2922ee29fdeb4e3d058bcfe66f9c85b0797a217a712843d887d90e6af96ef22b9f18c626310fcb25bfdf
|
data/Gemfile.lock
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
riveter (0.2.
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
activesupport (~> 4.2.1)
|
|
9
|
-
railties (~> 4.2.1)
|
|
10
|
-
validates_timeliness (~> 3.0.14)
|
|
4
|
+
riveter (0.2.1)
|
|
5
|
+
activemodel (>= 4.0.0)
|
|
6
|
+
railties (>= 4.0.0)
|
|
7
|
+
validates_timeliness (>= 3.0.0)
|
|
11
8
|
|
|
12
9
|
GEM
|
|
13
10
|
remote: https://rubygems.org/
|
|
@@ -54,7 +54,7 @@ describe <%= class_name %>Enquiry do
|
|
|
54
54
|
expect(block).to receive(:call).any_number_of_times
|
|
55
55
|
|
|
56
56
|
subject.submit(valid_query_filter_attributes)
|
|
57
|
-
subject.query_results.each
|
|
57
|
+
subject.query_results.each(&block)
|
|
58
58
|
end
|
|
59
59
|
|
|
60
60
|
it "fails with invalid attributes" do
|
|
@@ -17,7 +17,7 @@ describe <%= class_name %>Query do
|
|
|
17
17
|
it {
|
|
18
18
|
block = Mock::Block.new
|
|
19
19
|
expect(block).to receive(:call).at_least(:once)
|
|
20
|
-
subject.find_each
|
|
20
|
+
subject.find_each(&block)
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
end
|
|
@@ -31,7 +31,7 @@ describe <%= class_name %>Query do
|
|
|
31
31
|
it {
|
|
32
32
|
block = Mock::Block.new
|
|
33
33
|
expect(block).to_not receive(:call)
|
|
34
|
-
subject.find_each
|
|
34
|
+
subject.find_each(&block)
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
end
|
|
@@ -234,13 +234,18 @@ class Hash
|
|
|
234
234
|
include Riveter::CoreExtensions::HashExtensions
|
|
235
235
|
end
|
|
236
236
|
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
include Riveter::CoreExtensions::BatchFinderSupport
|
|
240
|
-
end
|
|
237
|
+
# mixin if active record is available
|
|
238
|
+
if defined?(ActiveRecord)
|
|
241
239
|
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
240
|
+
class ActiveRecord::Relation
|
|
241
|
+
include Riveter::CoreExtensions::ChainedQuerySupport
|
|
242
|
+
include Riveter::CoreExtensions::BatchFinderSupport
|
|
245
243
|
end
|
|
244
|
+
|
|
245
|
+
module ActiveRecord
|
|
246
|
+
module Querying
|
|
247
|
+
delegate :find_each_with_order, :find_in_batches_with_order, :to => :scoped
|
|
248
|
+
end
|
|
249
|
+
end
|
|
250
|
+
|
|
246
251
|
end
|
data/lib/riveter/enquiry.rb
CHANGED
|
@@ -26,7 +26,7 @@ module Riveter
|
|
|
26
26
|
# define an anomymous class derived from QueryFilter
|
|
27
27
|
# which invokes the block given in the classes context
|
|
28
28
|
query_filter_klass = Class.new(QueryFilter::Base)
|
|
29
|
-
query_filter_klass.class_eval
|
|
29
|
+
query_filter_klass.class_eval(&block)
|
|
30
30
|
|
|
31
31
|
# for anonymous classes, need to override the
|
|
32
32
|
# model_name method so that forms etc can work
|
data/lib/riveter/version.rb
CHANGED
data/lib/riveter.rb
CHANGED
data/riveter.gemspec
CHANGED
|
@@ -20,12 +20,9 @@ Gem::Specification.new do |spec|
|
|
|
20
20
|
|
|
21
21
|
spec.required_ruby_version = '>= 2.0.0'
|
|
22
22
|
|
|
23
|
-
spec.add_dependency 'railties'
|
|
24
|
-
spec.add_dependency '
|
|
25
|
-
spec.add_dependency '
|
|
26
|
-
spec.add_dependency 'activerecord' , '~> 4.2.1'
|
|
27
|
-
spec.add_dependency 'activesupport' , '~> 4.2.1'
|
|
28
|
-
spec.add_dependency 'validates_timeliness' , '~> 3.0.14'
|
|
23
|
+
spec.add_dependency 'railties' , '>= 4.0.0'
|
|
24
|
+
spec.add_dependency 'activemodel' , '>= 4.0.0'
|
|
25
|
+
spec.add_dependency 'validates_timeliness' , '>= 3.0.0'
|
|
29
26
|
|
|
30
27
|
spec.add_development_dependency 'bundler' , '~> 1.10.1'
|
|
31
28
|
spec.add_development_dependency 'rake' , '~> 10.4.2'
|
|
@@ -94,13 +94,13 @@ describe Riveter::CoreExtensions do
|
|
|
94
94
|
it "should invoke block" do
|
|
95
95
|
block = Mock::Block.new()
|
|
96
96
|
expect(block).to receive(:call).exactly(4).times
|
|
97
|
-
subject.find_each_with_order
|
|
97
|
+
subject.find_each_with_order(&block)
|
|
98
98
|
end
|
|
99
99
|
|
|
100
100
|
it "should not invoke block" do
|
|
101
101
|
block = Mock::Block.new()
|
|
102
102
|
expect(block).to_not receive(:call)
|
|
103
|
-
[].find_each_with_order
|
|
103
|
+
[].find_each_with_order(&block)
|
|
104
104
|
end
|
|
105
105
|
end
|
|
106
106
|
end
|
data/spec/riveter/query_spec.rb
CHANGED
|
@@ -44,13 +44,13 @@ describe Riveter::Query do
|
|
|
44
44
|
expect(block).to receive(:call).at_least(:once)
|
|
45
45
|
|
|
46
46
|
fake_relation = [1]
|
|
47
|
-
allow(fake_relation).to receive(:find_each_with_order) do |*args, &
|
|
48
|
-
|
|
47
|
+
allow(fake_relation).to receive(:find_each_with_order) do |*args, &blck|
|
|
48
|
+
blck.call(*args)
|
|
49
49
|
end
|
|
50
50
|
allow_any_instance_of(TestQuery).to receive(:relation) { fake_relation }
|
|
51
51
|
|
|
52
52
|
query = TestQuery.new(nil)
|
|
53
|
-
query.find_each
|
|
53
|
+
query.find_each(&block)
|
|
54
54
|
end
|
|
55
55
|
end
|
|
56
56
|
|
data/spec/spec_helper.rb
CHANGED
|
@@ -30,13 +30,17 @@ module ValidatorDetector
|
|
|
30
30
|
if method.instance_of?(Symbol) || method.instance_of?(String)
|
|
31
31
|
# it's a model method, so evalulate within context
|
|
32
32
|
self.new().instance_eval do
|
|
33
|
-
|
|
33
|
+
# call the method assocated with the validation
|
|
34
|
+
# if a method is called in an unless, we need to flip the boolean result
|
|
35
|
+
( validator.options[:unless].present? ? !send(method) : send(method) ) rescue false
|
|
34
36
|
end
|
|
35
37
|
|
|
36
38
|
elsif method.instance_of?(Proc)
|
|
37
39
|
# it's a lambda, so invoke within context
|
|
38
40
|
self.new().instance_eval do
|
|
39
|
-
|
|
41
|
+
# call the proc assocated with the validation
|
|
42
|
+
# if a method is called in an unless, we need to flip the boolean result
|
|
43
|
+
( validator.options[:unless].present? ? !method.call(self) : method.call(self) ) rescue false
|
|
40
44
|
end
|
|
41
45
|
|
|
42
46
|
else
|
metadata
CHANGED
|
@@ -1,99 +1,57 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: riveter
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Chris Stefano
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-
|
|
11
|
+
date: 2015-06-01 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: railties
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - "
|
|
17
|
+
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 4.
|
|
19
|
+
version: 4.0.0
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
|
-
- - "
|
|
24
|
+
- - ">="
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: 4.
|
|
27
|
-
- !ruby/object:Gem::Dependency
|
|
28
|
-
name: actionpack
|
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
|
30
|
-
requirements:
|
|
31
|
-
- - "~>"
|
|
32
|
-
- !ruby/object:Gem::Version
|
|
33
|
-
version: 4.2.1
|
|
34
|
-
type: :runtime
|
|
35
|
-
prerelease: false
|
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
-
requirements:
|
|
38
|
-
- - "~>"
|
|
39
|
-
- !ruby/object:Gem::Version
|
|
40
|
-
version: 4.2.1
|
|
26
|
+
version: 4.0.0
|
|
41
27
|
- !ruby/object:Gem::Dependency
|
|
42
28
|
name: activemodel
|
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
|
44
30
|
requirements:
|
|
45
|
-
- - "
|
|
31
|
+
- - ">="
|
|
46
32
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: 4.
|
|
33
|
+
version: 4.0.0
|
|
48
34
|
type: :runtime
|
|
49
35
|
prerelease: false
|
|
50
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
37
|
requirements:
|
|
52
|
-
- - "
|
|
38
|
+
- - ">="
|
|
53
39
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: 4.
|
|
55
|
-
- !ruby/object:Gem::Dependency
|
|
56
|
-
name: activerecord
|
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - "~>"
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: 4.2.1
|
|
62
|
-
type: :runtime
|
|
63
|
-
prerelease: false
|
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
-
requirements:
|
|
66
|
-
- - "~>"
|
|
67
|
-
- !ruby/object:Gem::Version
|
|
68
|
-
version: 4.2.1
|
|
69
|
-
- !ruby/object:Gem::Dependency
|
|
70
|
-
name: activesupport
|
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
|
72
|
-
requirements:
|
|
73
|
-
- - "~>"
|
|
74
|
-
- !ruby/object:Gem::Version
|
|
75
|
-
version: 4.2.1
|
|
76
|
-
type: :runtime
|
|
77
|
-
prerelease: false
|
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
-
requirements:
|
|
80
|
-
- - "~>"
|
|
81
|
-
- !ruby/object:Gem::Version
|
|
82
|
-
version: 4.2.1
|
|
40
|
+
version: 4.0.0
|
|
83
41
|
- !ruby/object:Gem::Dependency
|
|
84
42
|
name: validates_timeliness
|
|
85
43
|
requirement: !ruby/object:Gem::Requirement
|
|
86
44
|
requirements:
|
|
87
|
-
- - "
|
|
45
|
+
- - ">="
|
|
88
46
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: 3.0.
|
|
47
|
+
version: 3.0.0
|
|
90
48
|
type: :runtime
|
|
91
49
|
prerelease: false
|
|
92
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
51
|
requirements:
|
|
94
|
-
- - "
|
|
52
|
+
- - ">="
|
|
95
53
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: 3.0.
|
|
54
|
+
version: 3.0.0
|
|
97
55
|
- !ruby/object:Gem::Dependency
|
|
98
56
|
name: bundler
|
|
99
57
|
requirement: !ruby/object:Gem::Requirement
|