cached_enumeration 2.0.1 → 2.1.0

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 CHANGED
@@ -1,7 +1,7 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 7dbdccc32a47ad95a80e5bcff167261ada058543
4
- data.tar.gz: 15f3fe9d20579051041d4cdb79daa73d8910b90b
5
- SHA512:
6
- metadata.gz: bf2bf65c921160df82a3be23416a96e99a2e1ef5827c422a18d4304fe3b00c5e46ccb853f0948f5e78096c871eabc8b6bb87b36d050a95c8f17846bd750ce26b
7
- data.tar.gz: b55171870df0726aaf90d035735c0f5b8c9aeb0bbb0d784aebf720ff964617b038f4c545566ec6e17a85e58cfa234fd84dc17e23bccb70b9afd071881e8d3944
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 762f263592f84d596f9aa2ecec54a39cf4004322
4
+ data.tar.gz: de7d357cc9c67fdf7cc1148977e35d516b1c2d8c
5
+ SHA512:
6
+ metadata.gz: 13e7afddd458f163181c2b848c976c5374e80e41862775343725ce1ebc767d04047db575f37904ab936d903718cb09279280e86b8e5b442e9cafa0628a426306
7
+ data.tar.gz: d9bc25c0ead3780447145195aa56f78ff045444c6a65b2c587c29975a717abc3b94fa2b31e181076d483627ceeae35ece5471bc614a1122f83915ea4db8e4054
@@ -22,9 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.add_development_dependency "rake"
23
23
  spec.add_development_dependency "rspec","~> 3.1"
24
24
  spec.add_development_dependency "sqlite3","1.3.8"
25
- # spec.add_development_dependency "byebug"
26
- # spec.add_development_dependency "rubinius-debugger"
27
- spec.add_dependency "activerecord","~> 4.1"
25
+ spec.add_dependency "activerecord","~> 4.1.0"
28
26
 
29
27
  end
30
28
 
@@ -1,3 +1,3 @@
1
1
  module CachedEnumeration
2
- VERSION = "2.0.1"
2
+ VERSION = "2.1.0"
3
3
  end
@@ -51,8 +51,8 @@ describe 'association caching' do
51
51
  him
52
52
  him.reload #to empty the assoc cache
53
53
 
54
- Gender.connection.should_not_receive(:exec_query)
55
- him.gender.name.should == 'male'
54
+ expect(Gender.connection).not_to receive(:exec_query)
55
+ expect(him.gender.name).to eq('male')
56
56
  end
57
57
 
58
58
  =begin
@@ -27,13 +27,13 @@ describe 'simple caching' do
27
27
 
28
28
  context "cache_enumeration?" do
29
29
  it "should return the rigth value" do
30
- @klass.should_not be_cache_enumeration
30
+ expect(@klass).not_to be_cache_enumeration
31
31
  @klass.cache_enumeration.cache!
32
- @klass.should be_cache_enumeration
32
+ expect(@klass).to be_cache_enumeration
33
33
  end
34
34
  it "should not cache if not activated" do
35
35
  @klass.all
36
- @klass.should_not be_cache_enumeration
36
+ expect(@klass).not_to be_cache_enumeration
37
37
  end
38
38
  end
39
39
 
@@ -45,29 +45,29 @@ describe 'simple caching' do
45
45
 
46
46
  it "should fire db queries if all is modified" do
47
47
  @klass.cache_enumeration.cache!
48
- @klass.connection.should_receive(:exec_query).and_call_original
49
- @klass.where("name in ('one','two')").all.size.should == 2
48
+ expect(@klass.connection).to receive(:exec_query).and_call_original
49
+ expect(@klass.where("name in ('one','two')").all.size).to eq(2)
50
50
  end
51
51
 
52
52
  it 'should fire db queries if all has parameters' do
53
53
  @klass.cache_enumeration.cache!
54
54
  #@klass.connection.should_receive(:exec_query)..and_call_original
55
- @klass.where("name = 'one'").all.size.should == 1
55
+ expect(@klass.where("name = 'one'").all.size).to eq(1)
56
56
  end
57
57
 
58
58
  it 'should fire db queries if all with parameters is used through find(:all)' do
59
59
  @klass.cache_enumeration.cache!
60
- @klass.connection.should_receive(:exec_query).and_call_original
61
- @klass.where("name = 'one'").all.size.should == 1
60
+ expect(@klass.connection).to receive(:exec_query).and_call_original
61
+ expect(@klass.where("name = 'one'").all.size).to eq(1)
62
62
  end
63
63
 
64
64
  it 'should fire db queries if all with select parameter is used through find(:all)' do
65
65
  @klass.cache_enumeration.cache!
66
- @klass.connection.should_receive(:exec_query).and_call_original
66
+ expect(@klass.connection).to receive(:exec_query).and_call_original
67
67
  entry = @klass.select("id, name").all.first
68
- lambda {
68
+ expect {
69
69
  entry.other
70
- }.should raise_error(ActiveModel::MissingAttributeError, 'missing attribute: other')
70
+ }.to raise_error(ActiveModel::MissingAttributeError, 'missing attribute: other')
71
71
  end
72
72
 
73
73
  end
@@ -75,40 +75,40 @@ describe 'simple caching' do
75
75
  context 'first' do
76
76
  it 'should find the first entry' do
77
77
  @klass.cache_enumeration.cache!
78
- @klass.first.should == one
78
+ expect(@klass.first).to eq(one)
79
79
  end
80
80
  it 'should allwo string order (and use cache)' do
81
81
  @klass.cache_enumeration(:order => "other").cache!
82
- @klass.connection.should_not_receive(:exec_query)
82
+ expect(@klass.connection).not_to receive(:exec_query)
83
83
 
84
- @klass.order('other').first.should == three
84
+ expect(@klass.order('other').first).to eq(three)
85
85
  end
86
86
  it 'should allow hash condition (and use cache)' do
87
87
  @klass.cache_enumeration.cache!
88
- @klass.connection.should_not_receive(:exec_query)
88
+ expect(@klass.connection).not_to receive(:exec_query)
89
89
 
90
- @klass.where(:name => 'three').first.should == three
90
+ expect(@klass.where(:name => 'three').first).to eq(three)
91
91
  end
92
92
  it 'should allow string conditions (and ask db)' do
93
93
  @klass.cache_enumeration.cache!
94
- @klass.connection.should_receive(:exec_query).and_call_original
95
- @klass.where("other = 'drei'").first.should == three
94
+ expect(@klass.connection).to receive(:exec_query).and_call_original
95
+ expect(@klass.where("other = 'drei'").first).to eq(three)
96
96
  end
97
97
 
98
98
  it 'should allow hash conditions in first (and use cache)' do
99
99
  @klass.cache_enumeration.cache!
100
- @klass.connection.should_not_receive(:exec_query)
101
- @klass.where(:name => 'three' ).first.should == three
100
+ expect(@klass.connection).not_to receive(:exec_query)
101
+ expect(@klass.where(:name => 'three' ).first).to eq(three)
102
102
  end
103
103
 
104
104
  it 'should allow conditions for first (and use db)' do
105
105
  @klass.cache_enumeration.cache!
106
- @klass.connection.should_receive(:exec_query).and_call_original
107
- @klass.where("other = 'drei'").first.should == three
106
+ expect(@klass.connection).to receive(:exec_query).and_call_original
107
+ expect(@klass.where("other = 'drei'").first).to eq(three)
108
108
  end
109
109
  it 'should allow conditions for first (and use db)' do
110
110
  @klass.cache_enumeration.cache!
111
- @klass.connection.should_receive(:exec_query).and_call_original
111
+ expect(@klass.connection).to receive(:exec_query).and_call_original
112
112
  expect(@klass.where("name = 'three'").first).not_to be_nil
113
113
  end
114
114
  end
@@ -120,40 +120,40 @@ describe 'simple caching' do
120
120
 
121
121
  it 'should find objects providing id' do
122
122
  @klass.cache_enumeration.cache!
123
- @klass.connection.should_not_receive(:exec_query)
123
+ expect(@klass.connection).not_to receive(:exec_query)
124
124
 
125
- @klass.find(one.id).id.should == one.id
126
- @klass.find(one.id).frozen?().should eq(true)
127
- @klass.find([one.id])[0].id.should == one.id
128
- @klass.find([]).size.should == 0
125
+ expect(@klass.find(one.id).id).to eq(one.id)
126
+ expect(@klass.find(one.id).frozen?()).to eq(true)
127
+ expect(@klass.find([one.id])[0].id).to eq(one.id)
128
+ expect(@klass.find([]).size).to eq(0)
129
129
 
130
- lambda { @klass.find(0) }.should raise_error(ActiveRecord::RecordNotFound)
131
- lambda { @klass.find(nil) }.should raise_error(ActiveRecord::RecordNotFound)
130
+ expect { @klass.find(0) }.to raise_error(ActiveRecord::RecordNotFound)
131
+ expect { @klass.find(nil) }.to raise_error(ActiveRecord::RecordNotFound)
132
132
  end
133
133
 
134
134
  it "should find an array of object ids (and hit cache)" do
135
135
  @klass.cache_enumeration.cache!
136
- @klass.connection.should_not_receive(:exec_query)
136
+ expect(@klass.connection).not_to receive(:exec_query)
137
137
 
138
- @klass.find([one.id, three.id]).collect { |item| item.id }.should == [one.id, three.id]
138
+ expect(@klass.find([one.id, three.id]).collect { |item| item.id }).to eq([one.id, three.id])
139
139
  end
140
140
 
141
141
  it 'should find_by' do
142
142
  @klass.cache_enumeration.cache!
143
- @klass.connection.should_not_receive(:exec_query)
143
+ expect(@klass.connection).not_to receive(:exec_query)
144
144
 
145
- @klass.find_by(:id => one.id).id.should == one.id
146
- @klass.find_by(:id => one.id.to_s).id.should == one.id
147
- @klass.find_by(:id => 0).should be_nil
145
+ expect(@klass.find_by(:id => one.id).id).to eq(one.id)
146
+ expect(@klass.find_by(:id => one.id.to_s).id).to eq(one.id)
147
+ expect(@klass.find_by(:id => 0)).to be_nil
148
148
  end
149
149
 
150
150
  it 'should find objects by_name' do
151
151
  one
152
152
  @klass.cache_enumeration.cache!
153
- @klass.connection.should_not_receive(:exec_query)
153
+ expect(@klass.connection).not_to receive(:exec_query)
154
154
 
155
- @klass.find_by(:name => 'one').id.should == one.id
156
- @klass.find_by(:name => 'no such name').should be_nil
155
+ expect(@klass.find_by(:name => 'one').id).to eq(one.id)
156
+ expect(@klass.find_by(:name => 'no such name')).to be_nil
157
157
  end
158
158
 
159
159
  end
@@ -161,43 +161,43 @@ describe 'simple caching' do
161
161
  context "multiple keys" do
162
162
  it 'it should store by multiple keys (hashing)' do
163
163
  @klass.cache_enumeration(:hashed => ['id', 'other', 'name']).cache!
164
- @klass.connection.should_not_receive(:exec_query)
165
- @klass.find_by(:other => 'eins').id.should ==one.id
166
- @klass.find_by(:name => 'one').id.should ==one.id
164
+ expect(@klass.connection).not_to receive(:exec_query)
165
+ expect(@klass.find_by(:other => 'eins').id).to eq(one.id)
166
+ expect(@klass.find_by(:name => 'one').id).to eq(one.id)
167
167
  end
168
168
  end
169
169
  context "sorting of all" do
170
170
  it 'should sort by option' do
171
171
  @klass.cache_enumeration(:order => 'name').cache!
172
- @klass.connection.should_not_receive(:exec_query)
172
+ expect(@klass.connection).not_to receive(:exec_query)
173
173
 
174
- @klass.order("name").all.collect { |item| item.id }.should == [one.id, three.id, two.id]
174
+ expect(@klass.order("name").all.collect { |item| item.id }).to eq([one.id, three.id, two.id])
175
175
  end
176
176
 
177
177
  end
178
178
  context "constantize" do
179
179
  it "should constantize name by default" do
180
- @klass.cache_enumeration.options[:constantize].should == 'name'
180
+ expect(@klass.cache_enumeration.options[:constantize]).to eq('name')
181
181
  end
182
182
  it "should without no preloading" do
183
183
 
184
184
  @klass.cache_enumeration
185
- @klass::ONE.id.should == one.id
185
+ expect(@klass::ONE.id).to eq(one.id)
186
186
  end
187
187
 
188
188
  it 'should constantize other fields' do
189
189
  @klass.cache_enumeration(:constantize => 'other').cache!
190
- @klass.cache_enumeration.options[:constantize].should == 'other'
191
- @klass.connection.should_not_receive(:exec_query)
190
+ expect(@klass.cache_enumeration.options[:constantize]).to eq('other')
191
+ expect(@klass.connection).not_to receive(:exec_query)
192
192
 
193
- @klass::EINS.id.should == one.id
193
+ expect(@klass::EINS.id).to eq(one.id)
194
194
  end
195
195
 
196
196
  it "should contantize by lambda" do
197
197
  @klass.cache_enumeration(:constantize => lambda { |model| model.other }).cache!
198
- @klass.connection.should_not_receive(:exec_query)
198
+ expect(@klass.connection).not_to receive(:exec_query)
199
199
 
200
- @klass::EINS.id.should == one.id
200
+ expect(@klass::EINS.id).to eq(one.id)
201
201
  end
202
202
  end
203
203
 
data/spec/spec_helper.rb CHANGED
@@ -14,7 +14,6 @@ require 'cached_enumeration'
14
14
  require 'logger'
15
15
  #ActiveRecord::Base.logger=Logger.new(STDOUT)
16
16
  RSpec.configure do |config|
17
- config.treat_symbols_as_metadata_keys_with_true_values = true
18
17
  config.run_all_when_everything_filtered = true
19
18
  config.filter_run :focus
20
19
 
metadata CHANGED
@@ -1,77 +1,92 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: cached_enumeration
3
- version: !ruby/object:Gem::Version
4
- version: 2.0.1
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.1.0
5
5
  platform: ruby
6
- authors:
6
+ authors:
7
7
  - Peter Schrammel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
-
12
- date: 2014-10-28 00:00:00 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
11
+ date: 2015-08-04 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
15
14
  name: bundler
16
- prerelease: false
17
- requirement: &id001 !ruby/object:Gem::Requirement
18
- requirements:
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
19
17
  - - ~>
20
- - !ruby/object:Gem::Version
21
- version: "1.3"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
22
20
  type: :development
23
- version_requirements: *id001
24
- - !ruby/object:Gem::Dependency
25
- name: rake
26
21
  prerelease: false
27
- requirement: &id002 !ruby/object:Gem::Requirement
28
- requirements:
29
- - &id006
30
- - ">="
31
- - !ruby/object:Gem::Version
32
- version: "0"
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
33
34
  type: :development
34
- version_requirements: *id002
35
- - !ruby/object:Gem::Dependency
36
- name: rspec
37
35
  prerelease: false
38
- requirement: &id003 !ruby/object:Gem::Requirement
39
- requirements:
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
40
45
  - - ~>
41
- - !ruby/object:Gem::Version
42
- version: "3.1"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.1'
43
48
  type: :development
44
- version_requirements: *id003
45
- - !ruby/object:Gem::Dependency
46
- name: sqlite3
47
49
  prerelease: false
48
- requirement: &id004 !ruby/object:Gem::Requirement
49
- requirements:
50
- - - "="
51
- - !ruby/object:Gem::Version
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '3.1'
55
+ - !ruby/object:Gem::Dependency
56
+ name: sqlite3
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '='
60
+ - !ruby/object:Gem::Version
52
61
  version: 1.3.8
53
62
  type: :development
54
- version_requirements: *id004
55
- - !ruby/object:Gem::Dependency
56
- name: activerecord
57
63
  prerelease: false
58
- requirement: &id005 !ruby/object:Gem::Requirement
59
- requirements:
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '='
67
+ - !ruby/object:Gem::Version
68
+ version: 1.3.8
69
+ - !ruby/object:Gem::Dependency
70
+ name: activerecord
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
60
73
  - - ~>
61
- - !ruby/object:Gem::Version
62
- version: "4.1"
74
+ - !ruby/object:Gem::Version
75
+ version: 4.1.0
63
76
  type: :runtime
64
- version_requirements: *id005
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: 4.1.0
65
83
  description: Cache nonchanging ActiveRecord models in memory
66
- email:
84
+ email:
67
85
  - peter.schrammel@experteer.com
68
86
  executables: []
69
-
70
87
  extensions: []
71
-
72
88
  extra_rdoc_files: []
73
-
74
- files:
89
+ files:
75
90
  - .gitignore
76
91
  - .travis.yml
77
92
  - Gemfile
@@ -85,31 +100,31 @@ files:
85
100
  - spec/lib/association_spec.rb
86
101
  - spec/lib/cached_enumeration_spec.rb
87
102
  - spec/spec_helper.rb
88
- homepage: ""
89
- licenses:
103
+ homepage: ''
104
+ licenses:
90
105
  - MIT
91
106
  metadata: {}
92
-
93
107
  post_install_message:
94
108
  rdoc_options: []
95
-
96
- require_paths:
109
+ require_paths:
97
110
  - lib
98
- required_ruby_version: !ruby/object:Gem::Requirement
99
- requirements:
100
- - *id006
101
- required_rubygems_version: !ruby/object:Gem::Requirement
102
- requirements:
103
- - *id006
111
+ required_ruby_version: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - '>='
114
+ - !ruby/object:Gem::Version
115
+ version: '0'
116
+ required_rubygems_version: !ruby/object:Gem::Requirement
117
+ requirements:
118
+ - - '>='
119
+ - !ruby/object:Gem::Version
120
+ version: '0'
104
121
  requirements: []
105
-
106
122
  rubyforge_project:
107
- rubygems_version: 2.2.2
123
+ rubygems_version: 2.4.8
108
124
  signing_key:
109
125
  specification_version: 4
110
126
  summary: Cache nonchanging ActiveRecord models in memory
111
- test_files:
127
+ test_files:
112
128
  - spec/lib/association_spec.rb
113
129
  - spec/lib/cached_enumeration_spec.rb
114
130
  - spec/spec_helper.rb
115
- has_rdoc: