activerecord-tablefree 3.0.1 → 3.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 +4 -4
- data/Appraisals +6 -6
- data/Gemfile +3 -3
- data/README.md +9 -25
- data/Rakefile +12 -12
- data/activerecord-tablefree.gemspec +17 -17
- data/features/step_definitions/rails_steps.rb +32 -35
- data/features/step_definitions/tablefree.rb +6 -6
- data/features/step_definitions/web_steps.rb +9 -10
- data/features/support/env.rb +3 -3
- data/features/support/paths.rb +4 -4
- data/features/support/rails.rb +5 -6
- data/features/support/selectors.rb +4 -4
- data/lib/activerecord-tablefree.rb +58 -141
- data/lib/activerecord-tablefree/cast_type.rb +28 -0
- data/lib/activerecord-tablefree/connection.rb +70 -0
- data/lib/activerecord-tablefree/schema_cache.rb +7 -0
- data/lib/activerecord-tablefree/transaction.rb +4 -0
- data/lib/activerecord-tablefree/version.rb +1 -3
- data/spec/lib/activerecord-tablefree_spec.rb +149 -122
- data/spec/spec_helper.rb +1 -1
- metadata +36 -32
@@ -11,15 +11,15 @@ def make_tablefree_model(database = nil, nested = nil)
|
|
11
11
|
column :id, :integer
|
12
12
|
column :name, :string
|
13
13
|
#{if nested
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
14
|
+
'
|
15
|
+
has_many :arm_rests
|
16
|
+
accepts_nested_attributes_for :arm_rests
|
17
|
+
'
|
18
18
|
end}
|
19
19
|
end
|
20
20
|
EOCLASS
|
21
21
|
if nested
|
22
|
-
|
22
|
+
eval <<EOCLASS
|
23
23
|
class ArmRest < ActiveRecord::Base
|
24
24
|
#{database ? "has_no_table :database => :#{database}" : 'has_no_table'}
|
25
25
|
belongs_to :chair
|
@@ -32,229 +32,238 @@ EOCLASS
|
|
32
32
|
end
|
33
33
|
|
34
34
|
def remove_models
|
35
|
-
|
36
|
-
|
35
|
+
begin
|
36
|
+
Object.send(:remove_const, :Chair)
|
37
|
+
rescue
|
38
|
+
nil
|
39
|
+
end
|
40
|
+
begin
|
41
|
+
Object.send(:remove_const, :ArmRest)
|
42
|
+
rescue
|
43
|
+
nil
|
44
|
+
end
|
37
45
|
end
|
38
46
|
|
39
47
|
ActiveRecord::Base.logger = Logger.new(STDERR)
|
40
48
|
ActiveRecord::Base.logger.level = Logger::Severity::UNKNOWN
|
41
49
|
|
42
|
-
shared_examples_for
|
50
|
+
shared_examples_for 'an active record instance' do
|
43
51
|
it { should respond_to :id }
|
44
52
|
it { should respond_to :id= }
|
45
53
|
it { should respond_to :name }
|
46
54
|
it { should respond_to :name= }
|
47
55
|
it { should respond_to :update_attributes }
|
48
|
-
describe
|
49
|
-
before(:example){ subject.attributes=({:
|
50
|
-
it
|
56
|
+
describe '#attributes=' do
|
57
|
+
before(:example) { subject.attributes = ({ name: 'Jarl Friis' }) }
|
58
|
+
it 'assign attributes' do
|
51
59
|
expect(subject.name).to eq 'Jarl Friis'
|
52
60
|
end
|
53
61
|
end
|
54
62
|
end
|
55
63
|
|
56
|
-
shared_examples_for
|
57
|
-
describe
|
64
|
+
shared_examples_for 'a nested active record' do
|
65
|
+
describe 'conllection#build' do
|
58
66
|
specify do
|
59
|
-
expect(subject.arm_rests.build(
|
67
|
+
expect(subject.arm_rests.build(name: 'nice arm_rest')).to be_an_instance_of(ArmRest)
|
60
68
|
end
|
61
69
|
end
|
62
|
-
describe
|
70
|
+
describe 'conllection#<<' do
|
63
71
|
specify do
|
64
|
-
expect(subject.arm_rests << ArmRest.new(
|
72
|
+
expect(subject.arm_rests << ArmRest.new(name: 'nice arm_rest')).to have(1).items
|
65
73
|
end
|
66
74
|
describe 'appending two children' do
|
67
75
|
before(:example) do
|
68
|
-
subject.arm_rests << [ArmRest.new(
|
69
|
-
ArmRest.new(
|
76
|
+
subject.arm_rests << [ArmRest.new(name: 'left'),
|
77
|
+
ArmRest.new(name: 'right')]
|
70
78
|
end
|
71
|
-
it
|
79
|
+
it 'assigns nested attributes' do
|
72
80
|
expect(subject.arm_rests[0].name).to eq 'left'
|
73
81
|
expect(subject.arm_rests[1].name).to eq 'right'
|
74
82
|
end
|
75
83
|
end
|
76
84
|
end
|
77
|
-
describe
|
78
|
-
before(:example)
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
+
describe '#attributes=' do
|
86
|
+
before(:example) do
|
87
|
+
subject.attributes = ({ name: 'Jarl Friis',
|
88
|
+
arm_rests_attributes: [
|
89
|
+
{ name: 'left' },
|
90
|
+
{ name: 'right' }
|
91
|
+
] })
|
92
|
+
end
|
93
|
+
it 'assigns attributes' do
|
85
94
|
expect(subject.name).to eq 'Jarl Friis'
|
86
95
|
end
|
87
|
-
it
|
96
|
+
it 'assigns nested attributes' do
|
88
97
|
expect(subject.arm_rests[0].name).to eq 'left'
|
89
98
|
expect(subject.arm_rests[1].name).to eq 'right'
|
90
99
|
end
|
91
100
|
end
|
92
101
|
end
|
93
102
|
|
94
|
-
shared_examples_for
|
103
|
+
shared_examples_for 'a tablefree model with fail_fast' do
|
95
104
|
case ActiveRecord::VERSION::MAJOR
|
96
105
|
when 3
|
97
|
-
describe
|
98
|
-
it
|
106
|
+
describe '#all' do
|
107
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
99
108
|
expect { subject.all }.to raise_exception(ActiveRecord::Tablefree::NoDatabase)
|
100
109
|
end
|
101
110
|
end
|
102
111
|
when 4
|
103
|
-
describe
|
104
|
-
it
|
112
|
+
describe '#all' do
|
113
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
105
114
|
expect { subject.all }.to_not raise_exception
|
106
115
|
end
|
107
116
|
end
|
108
|
-
describe
|
109
|
-
it
|
117
|
+
describe '#all[]' do
|
118
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
110
119
|
expect { subject.all[0] }.to raise_exception(ActiveRecord::Tablefree::NoDatabase)
|
111
120
|
end
|
112
121
|
end
|
113
122
|
end
|
114
|
-
describe
|
115
|
-
it
|
116
|
-
expect { subject.create(:
|
123
|
+
describe '#create' do
|
124
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
125
|
+
expect { subject.create(name: 'Jarl') }.to raise_exception(ActiveRecord::Tablefree::NoDatabase)
|
117
126
|
end
|
118
127
|
end
|
119
|
-
describe
|
120
|
-
it
|
128
|
+
describe '#destroy' do
|
129
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
121
130
|
expect { subject.destroy(1) }.to raise_exception(ActiveRecord::Tablefree::NoDatabase)
|
122
131
|
end
|
123
132
|
end
|
124
|
-
describe
|
125
|
-
it
|
133
|
+
describe '#destroy_all' do
|
134
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
126
135
|
expect { subject.destroy_all }.to raise_exception(ActiveRecord::Tablefree::NoDatabase)
|
127
136
|
end
|
128
137
|
end
|
129
138
|
end
|
130
139
|
|
131
|
-
shared_examples_for
|
132
|
-
it_behaves_like
|
133
|
-
describe
|
134
|
-
it
|
140
|
+
shared_examples_for 'a tablefree model instance with fail_fast' do
|
141
|
+
it_behaves_like 'an active record instance'
|
142
|
+
describe '#save' do
|
143
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
135
144
|
expect { subject.save }.to raise_exception(ActiveRecord::Tablefree::NoDatabase)
|
136
145
|
end
|
137
146
|
end
|
138
|
-
describe
|
139
|
-
it
|
147
|
+
describe '#save!' do
|
148
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
140
149
|
expect { subject.save! }.to raise_exception(ActiveRecord::Tablefree::NoDatabase)
|
141
150
|
end
|
142
151
|
end
|
143
|
-
describe
|
144
|
-
it
|
152
|
+
describe '#reload' do
|
153
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
145
154
|
expect { subject.reload }.to raise_exception(ActiveRecord::Tablefree::NoDatabase)
|
146
155
|
end
|
147
156
|
end
|
148
|
-
describe
|
149
|
-
it
|
150
|
-
expect { subject.update_attributes(:
|
157
|
+
describe '#update_attributes' do
|
158
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
159
|
+
expect { subject.update_attributes(name: 'Jarl') }.to raise_exception(StandardError)
|
151
160
|
end
|
152
161
|
end
|
153
162
|
end
|
154
163
|
|
155
|
-
describe
|
156
|
-
before(:context) {make_tablefree_model(nil, nil)}
|
157
|
-
after(:context){ remove_models }
|
164
|
+
describe 'Tablefree model with fail_fast' do
|
165
|
+
before(:context) { make_tablefree_model(nil, nil) }
|
166
|
+
after(:context) { remove_models }
|
158
167
|
subject { Chair }
|
159
|
-
it_behaves_like
|
160
|
-
describe
|
161
|
-
subject { Chair.new(:
|
162
|
-
it_behaves_like
|
168
|
+
it_behaves_like 'a tablefree model with fail_fast'
|
169
|
+
describe 'instance' do
|
170
|
+
subject { Chair.new(name: 'Jarl') }
|
171
|
+
it_behaves_like 'a tablefree model instance with fail_fast'
|
163
172
|
end
|
164
173
|
end
|
165
174
|
|
166
|
-
describe
|
167
|
-
before(:context) {make_tablefree_model(nil, true)}
|
168
|
-
after(:context){ remove_models }
|
175
|
+
describe 'Tablefree nested with fail_fast' do
|
176
|
+
before(:context) { make_tablefree_model(nil, true) }
|
177
|
+
after(:context) { remove_models }
|
169
178
|
subject { Chair }
|
170
|
-
it_behaves_like
|
171
|
-
describe
|
172
|
-
it
|
173
|
-
expect(subject.new(:
|
179
|
+
it_behaves_like 'a tablefree model with fail_fast'
|
180
|
+
describe '#new' do
|
181
|
+
it 'accepts attributes' do
|
182
|
+
expect(subject.new(name: 'Jarl')).to be_an_instance_of(subject)
|
174
183
|
end
|
175
|
-
it
|
176
|
-
expect(subject.new(:
|
184
|
+
it 'assign attributes' do
|
185
|
+
expect(subject.new(name: 'Jarl').name).to eq 'Jarl'
|
177
186
|
end
|
178
187
|
end
|
179
|
-
describe
|
180
|
-
subject { Chair.new(:
|
181
|
-
it_behaves_like
|
182
|
-
it_behaves_like
|
183
|
-
describe
|
184
|
-
it
|
188
|
+
describe 'instance' do
|
189
|
+
subject { Chair.new(name: 'Jarl') }
|
190
|
+
it_behaves_like 'a tablefree model instance with fail_fast'
|
191
|
+
it_behaves_like 'a nested active record'
|
192
|
+
describe '#update_attributes' do
|
193
|
+
it 'raises ActiveRecord::Tablefree::NoDatabase' do
|
185
194
|
expect do
|
186
|
-
subject.update_attributes(:
|
195
|
+
subject.update_attributes(arm_rests: { name: 'nice arm_rest' })
|
187
196
|
end.to raise_exception(StandardError)
|
188
197
|
end
|
189
198
|
end
|
190
199
|
end
|
191
|
-
describe
|
200
|
+
describe 'instance with nested models' do
|
192
201
|
subject do
|
193
|
-
Chair.new(:
|
194
|
-
:
|
195
|
-
|
196
|
-
|
197
|
-
|
202
|
+
Chair.new(name: 'Jarl',
|
203
|
+
arm_rests: [
|
204
|
+
ArmRest.new(name: 'left'),
|
205
|
+
ArmRest.new(name: 'right')
|
206
|
+
])
|
198
207
|
end
|
199
|
-
it {should be_an_instance_of(Chair) }
|
200
|
-
it {should have(2).arm_rests }
|
208
|
+
it { should be_an_instance_of(Chair) }
|
209
|
+
it { should have(2).arm_rests }
|
201
210
|
end
|
202
|
-
describe
|
211
|
+
describe 'instance with nested attributes' do
|
203
212
|
subject do
|
204
|
-
Chair.new(:
|
205
|
-
:
|
206
|
-
|
207
|
-
|
208
|
-
|
213
|
+
Chair.new(name: 'Jarl',
|
214
|
+
arm_rests_attributes: [
|
215
|
+
{ name: 'left' },
|
216
|
+
{ name: 'right' }
|
217
|
+
])
|
209
218
|
end
|
210
|
-
it {should be_an_instance_of(Chair)}
|
211
|
-
it {should have(2).arm_rests }
|
219
|
+
it { should be_an_instance_of(Chair) }
|
220
|
+
it { should have(2).arm_rests }
|
212
221
|
end
|
213
222
|
end
|
214
223
|
|
215
224
|
##
|
216
225
|
## Succeeding database
|
217
226
|
##
|
218
|
-
shared_examples_for
|
219
|
-
describe
|
220
|
-
specify { expect(subject.all).to eq []}
|
227
|
+
shared_examples_for 'a model with succeeding database' do
|
228
|
+
describe '#all' do
|
229
|
+
specify { expect(subject.all).to eq [] }
|
221
230
|
end
|
222
|
-
describe
|
223
|
-
specify { expect(subject.create(:
|
231
|
+
describe '#create' do
|
232
|
+
specify { expect(subject.create(name: 'Jarl')).to be_an_instance_of(subject) }
|
224
233
|
end
|
225
|
-
describe
|
234
|
+
describe '#destroy' do
|
226
235
|
specify { expect(subject.destroy(1)).to be_an_instance_of(subject) }
|
227
236
|
end
|
228
|
-
describe
|
237
|
+
describe '#destroy_all' do
|
229
238
|
specify { expect(subject.destroy_all).to eq [] }
|
230
239
|
end
|
231
240
|
end
|
232
241
|
|
233
|
-
shared_examples_for
|
234
|
-
it_behaves_like
|
242
|
+
shared_examples_for 'an instance with succeeding database' do
|
243
|
+
it_behaves_like 'an active record instance'
|
235
244
|
|
236
|
-
describe
|
245
|
+
describe '#save' do
|
237
246
|
specify { expect(subject.save).to eq true }
|
238
247
|
end
|
239
|
-
describe
|
248
|
+
describe '#save!' do
|
240
249
|
specify { expect(subject.save!).to eq true }
|
241
250
|
end
|
242
|
-
describe
|
251
|
+
describe '#reload' do
|
243
252
|
before { subject.save! }
|
244
253
|
specify { expect(subject.reload).to eq subject }
|
245
254
|
end
|
246
|
-
describe
|
247
|
-
specify { expect(subject.update_attributes(:
|
255
|
+
describe '#update_attributes' do
|
256
|
+
specify { expect(subject.update_attributes(name: 'Jarl Friis')).to eq true }
|
248
257
|
end
|
249
258
|
end
|
250
259
|
|
251
|
-
describe
|
252
|
-
|
260
|
+
describe 'ActiveRecord with real database' do
|
261
|
+
# This is only here to ensure that the shared examples are actually behaving like a real database.
|
253
262
|
before(:context) do
|
254
|
-
FileUtils.mkdir_p
|
255
|
-
ActiveRecord::Base.establish_connection(:
|
256
|
-
ActiveRecord::Base.connection.execute(
|
257
|
-
ActiveRecord::Base.connection.execute(
|
263
|
+
FileUtils.mkdir_p 'tmp'
|
264
|
+
ActiveRecord::Base.establish_connection(adapter: 'sqlite3', database: 'tmp/test.db')
|
265
|
+
ActiveRecord::Base.connection.execute('drop table if exists chairs')
|
266
|
+
ActiveRecord::Base.connection.execute('create table chairs (id INTEGER PRIMARY KEY, name TEXT )')
|
258
267
|
|
259
268
|
class Chair < ActiveRecord::Base
|
260
269
|
end
|
@@ -265,20 +274,38 @@ describe "ActiveRecord with real database" do
|
|
265
274
|
end
|
266
275
|
|
267
276
|
subject { Chair }
|
268
|
-
it_behaves_like
|
269
|
-
describe
|
270
|
-
subject { Chair.new(:
|
271
|
-
it_behaves_like
|
277
|
+
it_behaves_like 'a model with succeeding database'
|
278
|
+
describe 'instance' do
|
279
|
+
subject { Chair.new(name: 'Jarl') }
|
280
|
+
it_behaves_like 'an instance with succeeding database'
|
272
281
|
end
|
273
282
|
end
|
274
283
|
|
275
|
-
describe
|
284
|
+
describe 'Tablefree model with succeeding database' do
|
276
285
|
before(:context) { make_tablefree_model(:pretend_success, nil) }
|
277
|
-
after(:context){ remove_models }
|
286
|
+
after(:context) { remove_models }
|
278
287
|
subject { Chair }
|
279
|
-
it_behaves_like
|
280
|
-
describe
|
281
|
-
subject { Chair.new(:
|
282
|
-
it_behaves_like
|
288
|
+
it_behaves_like 'a model with succeeding database'
|
289
|
+
describe 'instance' do
|
290
|
+
subject { Chair.new(name: 'Jarl') }
|
291
|
+
it_behaves_like 'an instance with succeeding database'
|
292
|
+
end
|
293
|
+
end
|
294
|
+
|
295
|
+
describe 'Tablefree model can access connection' do
|
296
|
+
before(:context) { make_tablefree_model(:pretend_success, nil) }
|
297
|
+
after(:context) { remove_models }
|
298
|
+
describe '.connection' do
|
299
|
+
subject { Chair.connection }
|
300
|
+
it { is_expected.to be_a(ActiveRecord::Tablefree::Connection) }
|
301
|
+
end
|
302
|
+
end
|
303
|
+
|
304
|
+
describe 'Tablefree model can access connection transaction' do
|
305
|
+
before(:context) { make_tablefree_model(:pretend_success, nil) }
|
306
|
+
after(:context) { remove_models }
|
307
|
+
describe '.connection' do
|
308
|
+
subject { Chair.connection.current_transaction }
|
309
|
+
it { is_expected.to be_a(ActiveRecord::Tablefree::Transaction) }
|
283
310
|
end
|
284
311
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord-tablefree
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0
|
4
|
+
version: 3.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jarl Friis
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2017-
|
14
|
+
date: 2017-12-15 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: activerecord
|
@@ -47,7 +47,7 @@ dependencies:
|
|
47
47
|
requirements:
|
48
48
|
- - "~>"
|
49
49
|
- !ruby/object:Gem::Version
|
50
|
-
version: '
|
50
|
+
version: '12'
|
51
51
|
- - ">"
|
52
52
|
- !ruby/object:Gem::Version
|
53
53
|
version: '0'
|
@@ -57,7 +57,7 @@ dependencies:
|
|
57
57
|
requirements:
|
58
58
|
- - "~>"
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version: '
|
60
|
+
version: '12'
|
61
61
|
- - ">"
|
62
62
|
- !ruby/object:Gem::Version
|
63
63
|
version: '0'
|
@@ -90,89 +90,89 @@ dependencies:
|
|
90
90
|
- !ruby/object:Gem::Version
|
91
91
|
version: '1.0'
|
92
92
|
- !ruby/object:Gem::Dependency
|
93
|
-
name:
|
93
|
+
name: aruba
|
94
94
|
requirement: !ruby/object:Gem::Requirement
|
95
95
|
requirements:
|
96
96
|
- - "~>"
|
97
97
|
- !ruby/object:Gem::Version
|
98
|
-
version: '
|
98
|
+
version: '0.5'
|
99
99
|
type: :development
|
100
100
|
prerelease: false
|
101
101
|
version_requirements: !ruby/object:Gem::Requirement
|
102
102
|
requirements:
|
103
103
|
- - "~>"
|
104
104
|
- !ruby/object:Gem::Version
|
105
|
-
version: '
|
105
|
+
version: '0.5'
|
106
106
|
- !ruby/object:Gem::Dependency
|
107
|
-
name:
|
107
|
+
name: cucumber
|
108
108
|
requirement: !ruby/object:Gem::Requirement
|
109
109
|
requirements:
|
110
110
|
- - "~>"
|
111
111
|
- !ruby/object:Gem::Version
|
112
|
-
version: '
|
112
|
+
version: '1.1'
|
113
113
|
type: :development
|
114
114
|
prerelease: false
|
115
115
|
version_requirements: !ruby/object:Gem::Requirement
|
116
116
|
requirements:
|
117
117
|
- - "~>"
|
118
118
|
- !ruby/object:Gem::Version
|
119
|
-
version: '
|
119
|
+
version: '1.1'
|
120
120
|
- !ruby/object:Gem::Dependency
|
121
|
-
name: rspec
|
121
|
+
name: rspec
|
122
122
|
requirement: !ruby/object:Gem::Requirement
|
123
123
|
requirements:
|
124
124
|
- - "~>"
|
125
125
|
- !ruby/object:Gem::Version
|
126
|
-
version: '1
|
126
|
+
version: '3.1'
|
127
127
|
type: :development
|
128
128
|
prerelease: false
|
129
129
|
version_requirements: !ruby/object:Gem::Requirement
|
130
130
|
requirements:
|
131
131
|
- - "~>"
|
132
132
|
- !ruby/object:Gem::Version
|
133
|
-
version: '1
|
133
|
+
version: '3.1'
|
134
134
|
- !ruby/object:Gem::Dependency
|
135
|
-
name:
|
135
|
+
name: rspec-collection_matchers
|
136
136
|
requirement: !ruby/object:Gem::Requirement
|
137
137
|
requirements:
|
138
138
|
- - "~>"
|
139
139
|
- !ruby/object:Gem::Version
|
140
|
-
version: '0
|
140
|
+
version: '1.0'
|
141
141
|
type: :development
|
142
142
|
prerelease: false
|
143
143
|
version_requirements: !ruby/object:Gem::Requirement
|
144
144
|
requirements:
|
145
145
|
- - "~>"
|
146
146
|
- !ruby/object:Gem::Version
|
147
|
-
version: '0
|
147
|
+
version: '1.0'
|
148
148
|
- !ruby/object:Gem::Dependency
|
149
|
-
name:
|
149
|
+
name: capybara
|
150
150
|
requirement: !ruby/object:Gem::Requirement
|
151
151
|
requirements:
|
152
152
|
- - "~>"
|
153
153
|
- !ruby/object:Gem::Version
|
154
|
-
version: '
|
154
|
+
version: '0.0'
|
155
155
|
type: :development
|
156
156
|
prerelease: false
|
157
157
|
version_requirements: !ruby/object:Gem::Requirement
|
158
158
|
requirements:
|
159
159
|
- - "~>"
|
160
160
|
- !ruby/object:Gem::Version
|
161
|
-
version: '
|
161
|
+
version: '0.0'
|
162
162
|
- !ruby/object:Gem::Dependency
|
163
|
-
name:
|
163
|
+
name: coveralls
|
164
164
|
requirement: !ruby/object:Gem::Requirement
|
165
165
|
requirements:
|
166
|
-
- - "
|
166
|
+
- - ">="
|
167
167
|
- !ruby/object:Gem::Version
|
168
|
-
version: '0
|
168
|
+
version: '0'
|
169
169
|
type: :development
|
170
170
|
prerelease: false
|
171
171
|
version_requirements: !ruby/object:Gem::Requirement
|
172
172
|
requirements:
|
173
|
-
- - "
|
173
|
+
- - ">="
|
174
174
|
- !ruby/object:Gem::Version
|
175
|
-
version: '0
|
175
|
+
version: '0'
|
176
176
|
- !ruby/object:Gem::Dependency
|
177
177
|
name: gem-release
|
178
178
|
requirement: !ruby/object:Gem::Requirement
|
@@ -188,7 +188,7 @@ dependencies:
|
|
188
188
|
- !ruby/object:Gem::Version
|
189
189
|
version: 0.7.4
|
190
190
|
- !ruby/object:Gem::Dependency
|
191
|
-
name:
|
191
|
+
name: listen
|
192
192
|
requirement: !ruby/object:Gem::Requirement
|
193
193
|
requirements:
|
194
194
|
- - ">="
|
@@ -202,21 +202,21 @@ dependencies:
|
|
202
202
|
- !ruby/object:Gem::Version
|
203
203
|
version: '0'
|
204
204
|
- !ruby/object:Gem::Dependency
|
205
|
-
name:
|
205
|
+
name: nokogiri
|
206
206
|
requirement: !ruby/object:Gem::Requirement
|
207
207
|
requirements:
|
208
|
-
- - "
|
208
|
+
- - "~>"
|
209
209
|
- !ruby/object:Gem::Version
|
210
|
-
version: '0'
|
210
|
+
version: '1.0'
|
211
211
|
type: :development
|
212
212
|
prerelease: false
|
213
213
|
version_requirements: !ruby/object:Gem::Requirement
|
214
214
|
requirements:
|
215
|
-
- - "
|
215
|
+
- - "~>"
|
216
216
|
- !ruby/object:Gem::Version
|
217
|
-
version: '0'
|
217
|
+
version: '1.0'
|
218
218
|
- !ruby/object:Gem::Dependency
|
219
|
-
name:
|
219
|
+
name: rails
|
220
220
|
requirement: !ruby/object:Gem::Requirement
|
221
221
|
requirements:
|
222
222
|
- - ">="
|
@@ -230,7 +230,7 @@ dependencies:
|
|
230
230
|
- !ruby/object:Gem::Version
|
231
231
|
version: '0'
|
232
232
|
- !ruby/object:Gem::Dependency
|
233
|
-
name:
|
233
|
+
name: wwtd
|
234
234
|
requirement: !ruby/object:Gem::Requirement
|
235
235
|
requirements:
|
236
236
|
- - ">="
|
@@ -274,6 +274,10 @@ files:
|
|
274
274
|
- gemfiles/rails51.gemfile
|
275
275
|
- init.rb
|
276
276
|
- lib/activerecord-tablefree.rb
|
277
|
+
- lib/activerecord-tablefree/cast_type.rb
|
278
|
+
- lib/activerecord-tablefree/connection.rb
|
279
|
+
- lib/activerecord-tablefree/schema_cache.rb
|
280
|
+
- lib/activerecord-tablefree/transaction.rb
|
277
281
|
- lib/activerecord-tablefree/version.rb
|
278
282
|
- spec/lib/activerecord-tablefree_spec.rb
|
279
283
|
- spec/spec_helper.rb
|