cequel 1.4.2 → 1.4.3
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/CHANGELOG.md +6 -0
- data/Gemfile.lock +19 -12
- data/Rakefile +5 -1
- data/lib/cequel/record/data_set_builder.rb +9 -2
- data/lib/cequel/record/record_set.rb +16 -2
- data/lib/cequel/record/tasks.rb +6 -2
- data/lib/cequel/version.rb +1 -1
- data/spec/examples/metal/data_set_spec.rb +113 -106
- data/spec/examples/metal/keyspace_spec.rb +7 -15
- data/spec/examples/record/associations_spec.rb +30 -30
- data/spec/examples/record/callbacks_spec.rb +25 -25
- data/spec/examples/record/dirty_spec.rb +11 -10
- data/spec/examples/record/list_spec.rb +33 -33
- data/spec/examples/record/map_spec.rb +57 -41
- data/spec/examples/record/mass_assignment_spec.rb +5 -5
- data/spec/examples/record/naming_spec.rb +2 -2
- data/spec/examples/record/persistence_spec.rb +23 -23
- data/spec/examples/record/properties_spec.rb +19 -19
- data/spec/examples/record/record_set_spec.rb +155 -151
- data/spec/examples/record/schema_spec.rb +7 -7
- data/spec/examples/record/scoped_spec.rb +2 -2
- data/spec/examples/record/serialization_spec.rb +2 -2
- data/spec/examples/record/set_spec.rb +27 -23
- data/spec/examples/record/validations_spec.rb +13 -13
- data/spec/examples/schema/table_reader_spec.rb +85 -79
- data/spec/examples/schema/table_synchronizer_spec.rb +9 -9
- data/spec/examples/schema/table_updater_spec.rb +17 -17
- data/spec/examples/schema/table_writer_spec.rb +33 -33
- data/spec/examples/type_spec.rb +55 -55
- data/spec/support/helpers.rb +18 -10
- metadata +18 -5
- data/spec/shared/readable_dictionary.rb +0 -192
@@ -24,7 +24,7 @@ describe Cequel::Record::Map do
|
|
24
24
|
|
25
25
|
context 'new record' do
|
26
26
|
it 'should save set as-is' do
|
27
|
-
subject[:likes].
|
27
|
+
expect(subject[:likes]).to eq({'alice' => 1, 'bob' => 2})
|
28
28
|
end
|
29
29
|
end
|
30
30
|
|
@@ -32,13 +32,13 @@ describe Cequel::Record::Map do
|
|
32
32
|
it 'should overwrite value' do
|
33
33
|
post.likes = {'charlotte' => 3, 'dave' => 4}
|
34
34
|
post.save!
|
35
|
-
subject[:likes].
|
35
|
+
expect(subject[:likes]).to eq({'charlotte' => 3, 'dave' => 4})
|
36
36
|
end
|
37
37
|
|
38
38
|
it 'should cast collection before overwriting' do
|
39
39
|
post.likes = [['charlotte', 3], ['dave', 4]]
|
40
40
|
post.save!
|
41
|
-
subject[:likes].
|
41
|
+
expect(subject[:likes]).to eq({'charlotte' => 3, 'dave' => 4})
|
42
42
|
end
|
43
43
|
end
|
44
44
|
|
@@ -49,8 +49,9 @@ describe Cequel::Record::Map do
|
|
49
49
|
it 'should atomically update' do
|
50
50
|
post.likes['david'] = 4
|
51
51
|
post.save
|
52
|
-
subject[:likes].
|
52
|
+
expect(subject[:likes]).to eq(
|
53
53
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4}
|
54
|
+
)
|
54
55
|
expect(post.likes).to eq({'alice' => 1, 'bob' => 2, 'david' => 4})
|
55
56
|
end
|
56
57
|
|
@@ -65,11 +66,13 @@ describe Cequel::Record::Map do
|
|
65
66
|
end
|
66
67
|
|
67
68
|
it 'should write without reading' do
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
69
|
+
expect_statement_count 1 do
|
70
|
+
unloaded_post.likes['david'] = 4
|
71
|
+
unloaded_post.save
|
72
|
+
end
|
73
|
+
expect(subject[:likes]).to eq(
|
72
74
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4}
|
75
|
+
)
|
73
76
|
end
|
74
77
|
|
75
78
|
it 'should set key value post-hoc' do
|
@@ -83,20 +86,21 @@ describe Cequel::Record::Map do
|
|
83
86
|
it 'should atomically clear' do
|
84
87
|
post.likes.clear
|
85
88
|
post.save
|
86
|
-
subject[:likes].
|
89
|
+
expect(subject[:likes]).to be_blank
|
87
90
|
expect(post.likes).to eq({})
|
88
91
|
end
|
89
92
|
|
90
93
|
it 'should clear without reading' do
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
94
|
+
expect_statement_count 1 do
|
95
|
+
unloaded_post.likes.clear
|
96
|
+
unloaded_post.save
|
97
|
+
end
|
98
|
+
expect(subject[:likes]).to be_blank
|
95
99
|
end
|
96
100
|
|
97
101
|
it 'should clear post-hoc' do
|
98
102
|
unloaded_post.likes.clear
|
99
|
-
unloaded_post.likes.
|
103
|
+
expect(unloaded_post.likes).to be_blank
|
100
104
|
end
|
101
105
|
end
|
102
106
|
|
@@ -104,7 +108,7 @@ describe Cequel::Record::Map do
|
|
104
108
|
it 'should delete element atomically' do
|
105
109
|
post.likes.delete('bob')
|
106
110
|
post.save
|
107
|
-
subject[:likes].
|
111
|
+
expect(subject[:likes]).to eq({'alice' => 1, 'charles' => 3})
|
108
112
|
expect(post.likes).to eq({'alice' => 1})
|
109
113
|
end
|
110
114
|
|
@@ -114,10 +118,11 @@ describe Cequel::Record::Map do
|
|
114
118
|
end
|
115
119
|
|
116
120
|
it 'should delete without reading' do
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
+
expect_statement_count 1 do
|
122
|
+
unloaded_post.likes.delete('bob')
|
123
|
+
unloaded_post.save
|
124
|
+
end
|
125
|
+
expect(subject[:likes]).to eq({'alice' => 1, 'charles' => 3})
|
121
126
|
end
|
122
127
|
|
123
128
|
it 'should delete post-hoc' do
|
@@ -130,8 +135,9 @@ describe Cequel::Record::Map do
|
|
130
135
|
it 'should atomically update' do
|
131
136
|
post.likes.merge!('david' => 4, 'emily' => 5)
|
132
137
|
post.save
|
133
|
-
subject[:likes].
|
138
|
+
expect(subject[:likes]).to eq(
|
134
139
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4, 'emily' => 5}
|
140
|
+
)
|
135
141
|
expect(post.likes).to eq(
|
136
142
|
{'alice' => 1, 'bob' => 2, 'david' => 4, 'emily' => 5})
|
137
143
|
end
|
@@ -146,18 +152,21 @@ describe Cequel::Record::Map do
|
|
146
152
|
it 'should cast values before updating' do
|
147
153
|
post.likes.merge!('david' => '4', 'emily' => 5.0)
|
148
154
|
post.save
|
149
|
-
subject[:likes].
|
155
|
+
expect(subject[:likes]).to eq(
|
150
156
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4, 'emily' => 5}
|
157
|
+
)
|
151
158
|
expect(post.likes).to eq(
|
152
159
|
{'alice' => 1, 'bob' => 2, 'david' => 4, 'emily' => 5})
|
153
160
|
end
|
154
161
|
|
155
162
|
it 'should write without reading' do
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
163
|
+
expect_statement_count 1 do
|
164
|
+
unloaded_post.likes.merge!('david' => 4, 'emily' => 5)
|
165
|
+
unloaded_post.save
|
166
|
+
end
|
167
|
+
expect(subject[:likes]).to eq(
|
160
168
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4, 'emily' => 5}
|
169
|
+
)
|
161
170
|
end
|
162
171
|
|
163
172
|
it 'should merge post-hoc' do
|
@@ -171,7 +180,7 @@ describe Cequel::Record::Map do
|
|
171
180
|
it 'should automatically overwrite' do
|
172
181
|
post.likes.replace('david' => 4, 'emily' => 5)
|
173
182
|
post.save
|
174
|
-
subject[:likes].
|
183
|
+
expect(subject[:likes]).to eq({'david' => 4, 'emily' => 5})
|
175
184
|
expect(post.likes).to eq({'david' => 4, 'emily' => 5})
|
176
185
|
end
|
177
186
|
|
@@ -183,15 +192,16 @@ describe Cequel::Record::Map do
|
|
183
192
|
it 'should cast values before overwriting' do
|
184
193
|
post.likes.replace('david' => '4', 'emily' => 5.0)
|
185
194
|
post.save
|
186
|
-
subject[:likes].
|
195
|
+
expect(subject[:likes]).to eq({'david' => 4, 'emily' => 5})
|
187
196
|
expect(post.likes).to eq({'david' => 4, 'emily' => 5})
|
188
197
|
end
|
189
198
|
|
190
199
|
it 'should overwrite without reading' do
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
200
|
+
expect_statement_count 1 do
|
201
|
+
unloaded_post.likes.replace('david' => 4, 'emily' => 5)
|
202
|
+
unloaded_post.save
|
203
|
+
end
|
204
|
+
expect(subject[:likes]).to eq({'david' => 4, 'emily' => 5})
|
195
205
|
end
|
196
206
|
|
197
207
|
it 'should replace post-hoc' do
|
@@ -204,17 +214,20 @@ describe Cequel::Record::Map do
|
|
204
214
|
it 'should atomically update' do
|
205
215
|
post.likes.store('david', 4)
|
206
216
|
post.save
|
207
|
-
subject[:likes].
|
217
|
+
expect(subject[:likes]).to eq(
|
208
218
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4}
|
219
|
+
)
|
209
220
|
expect(post.likes).to eq({'alice' => 1, 'bob' => 2, 'david' => 4})
|
210
221
|
end
|
211
222
|
|
212
223
|
it 'should write without reading' do
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
224
|
+
expect_statement_count 1 do
|
225
|
+
unloaded_post.likes.store('david', 4)
|
226
|
+
unloaded_post.save
|
227
|
+
end
|
228
|
+
expect(subject[:likes]).to eq(
|
217
229
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4}
|
230
|
+
)
|
218
231
|
end
|
219
232
|
|
220
233
|
it 'should store post-hoc' do
|
@@ -228,18 +241,21 @@ describe Cequel::Record::Map do
|
|
228
241
|
it 'should atomically update' do
|
229
242
|
post.likes.update('david' => 4, 'emily' => 5)
|
230
243
|
post.save
|
231
|
-
subject[:likes].
|
244
|
+
expect(subject[:likes]).to eq(
|
232
245
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4, 'emily' => 5}
|
246
|
+
)
|
233
247
|
expect(post.likes).to eq(
|
234
248
|
{'alice' => 1, 'bob' => 2, 'david' => 4, 'emily' => 5})
|
235
249
|
end
|
236
250
|
|
237
251
|
it 'should write without reading' do
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
252
|
+
expect_statement_count 1 do
|
253
|
+
unloaded_post.likes.update('david' => 4, 'emily' => 5)
|
254
|
+
unloaded_post.save
|
255
|
+
end
|
256
|
+
expect(subject[:likes]).to eq(
|
242
257
|
{'alice' => 1, 'bob' => 2, 'charles' => 3, 'david' => 4, 'emily' => 5}
|
258
|
+
)
|
243
259
|
end
|
244
260
|
|
245
261
|
it 'should update post-hoc' do
|
@@ -9,12 +9,12 @@ describe Cequel::Record::MassAssignment do
|
|
9
9
|
end
|
10
10
|
|
11
11
|
it 'should allow assignment of vanilla hash' do
|
12
|
-
Post.new(:title => 'Cequel').title.
|
12
|
+
expect(Post.new(:title => 'Cequel').title).to eq('Cequel')
|
13
13
|
end
|
14
14
|
|
15
15
|
it 'should allow assignment of permitted strong params' do
|
16
|
-
Post.new(StrongParams.new(true, :title => 'Cequel')).title.
|
17
|
-
|
16
|
+
expect(Post.new(StrongParams.new(true, :title => 'Cequel')).title).
|
17
|
+
to eq('Cequel')
|
18
18
|
end
|
19
19
|
|
20
20
|
it 'should raise exception when assigned non-permitted strong params' do
|
@@ -46,11 +46,11 @@ describe Cequel::Record::MassAssignment do
|
|
46
46
|
let(:post) { Post.new(:title => 'Cequel', :page_views => 1000) }
|
47
47
|
|
48
48
|
it 'should allow assignment of accessible params' do
|
49
|
-
post.title.
|
49
|
+
expect(post.title).to eq('Cequel')
|
50
50
|
end
|
51
51
|
|
52
52
|
it 'should not allow assignment of inaccessible params' do
|
53
|
-
post.page_views.
|
53
|
+
expect(post.page_views).to be_nil
|
54
54
|
end
|
55
55
|
end
|
56
56
|
end
|
@@ -8,10 +8,10 @@ describe 'naming' do
|
|
8
8
|
end
|
9
9
|
|
10
10
|
it 'should implement model_name' do
|
11
|
-
Blog.model_name.
|
11
|
+
expect(Blog.model_name).to eq('Blog')
|
12
12
|
end
|
13
13
|
|
14
14
|
it 'should implement model_name interpolations' do
|
15
|
-
Blog.model_name.i18n_key.
|
15
|
+
expect(Blog.model_name.i18n_key).to eq(:blog)
|
16
16
|
end
|
17
17
|
end
|
@@ -29,18 +29,18 @@ describe Cequel::Record::Persistence do
|
|
29
29
|
end
|
30
30
|
|
31
31
|
describe 'new record' do
|
32
|
-
specify { Blog.new.
|
33
|
-
specify { Blog.new.
|
32
|
+
specify { expect(Blog.new).not_to be_persisted }
|
33
|
+
specify { expect(Blog.new).to be_transient }
|
34
34
|
end
|
35
35
|
|
36
36
|
describe '#save' do
|
37
37
|
context 'on create' do
|
38
38
|
it 'should save row to database' do
|
39
|
-
subject[:name].
|
39
|
+
expect(subject[:name]).to eq('Cequel')
|
40
40
|
end
|
41
41
|
|
42
42
|
it 'should mark row persisted' do
|
43
|
-
blog.
|
43
|
+
expect(blog).to be_persisted
|
44
44
|
end
|
45
45
|
|
46
46
|
it 'should fail fast if keys are missing' do
|
@@ -85,15 +85,15 @@ describe Cequel::Record::Persistence do
|
|
85
85
|
end
|
86
86
|
|
87
87
|
it 'should change existing column value' do
|
88
|
-
subject[:name].
|
88
|
+
expect(subject[:name]).to eq('Cequel 1.0')
|
89
89
|
end
|
90
90
|
|
91
91
|
it 'should add new column value' do
|
92
|
-
subject[:owner_id].
|
92
|
+
expect(subject[:owner_id]).to eq(owner_id)
|
93
93
|
end
|
94
94
|
|
95
95
|
it 'should remove old column values' do
|
96
|
-
subject[:description].
|
96
|
+
expect(subject[:description]).to be_nil
|
97
97
|
end
|
98
98
|
|
99
99
|
it 'should not allow changing key values' do
|
@@ -147,7 +147,7 @@ describe Cequel::Record::Persistence do
|
|
147
147
|
end
|
148
148
|
end
|
149
149
|
blog.save
|
150
|
-
subject[:name].
|
150
|
+
expect(subject[:name]).to eq('Pizza')
|
151
151
|
end
|
152
152
|
end
|
153
153
|
end
|
@@ -164,11 +164,11 @@ describe Cequel::Record::Persistence do
|
|
164
164
|
end
|
165
165
|
|
166
166
|
it 'should initialize with block' do
|
167
|
-
blog.name.
|
167
|
+
expect(blog.name).to eq('Big Data')
|
168
168
|
end
|
169
169
|
|
170
170
|
it 'should save instance' do
|
171
|
-
Blog.find(blog.subdomain).name.
|
171
|
+
expect(Blog.find(blog.subdomain).name).to eq('Big Data')
|
172
172
|
end
|
173
173
|
|
174
174
|
it 'should fail fast if keys are missing' do
|
@@ -186,11 +186,11 @@ describe Cequel::Record::Persistence do
|
|
186
186
|
end
|
187
187
|
|
188
188
|
it 'should initialize with block' do
|
189
|
-
blog.name.
|
189
|
+
expect(blog.name).to eq('Big Data')
|
190
190
|
end
|
191
191
|
|
192
192
|
it 'should save instance' do
|
193
|
-
Blog.find(blog.subdomain).name.
|
193
|
+
expect(Blog.find(blog.subdomain).name).to eq('Big Data')
|
194
194
|
end
|
195
195
|
|
196
196
|
it 'should fail fast if keys are missing' do
|
@@ -209,11 +209,11 @@ describe Cequel::Record::Persistence do
|
|
209
209
|
before { blog.update_attributes(:name => 'The Big Data Blog') }
|
210
210
|
|
211
211
|
it 'should update instance in memory' do
|
212
|
-
blog.name.
|
212
|
+
expect(blog.name).to eq('The Big Data Blog')
|
213
213
|
end
|
214
214
|
|
215
215
|
it 'should save instance' do
|
216
|
-
Blog.find(blog.subdomain).name.
|
216
|
+
expect(Blog.find(blog.subdomain).name).to eq('The Big Data Blog')
|
217
217
|
end
|
218
218
|
|
219
219
|
it 'should not allow updating key values' do
|
@@ -226,11 +226,11 @@ describe Cequel::Record::Persistence do
|
|
226
226
|
before { blog.destroy }
|
227
227
|
|
228
228
|
it 'should delete entire row' do
|
229
|
-
subject.
|
229
|
+
expect(subject).to be_nil
|
230
230
|
end
|
231
231
|
|
232
232
|
it 'should mark record transient' do
|
233
|
-
blog.
|
233
|
+
expect(blog).to be_transient
|
234
234
|
end
|
235
235
|
|
236
236
|
it 'should destroy with specified consistency' do
|
@@ -266,11 +266,11 @@ describe Cequel::Record::Persistence do
|
|
266
266
|
describe '#save' do
|
267
267
|
context 'on create' do
|
268
268
|
it 'should save row to database' do
|
269
|
-
subject[:title].
|
269
|
+
expect(subject[:title]).to eq('Cequel')
|
270
270
|
end
|
271
271
|
|
272
272
|
it 'should mark row persisted' do
|
273
|
-
post.
|
273
|
+
expect(post).to be_persisted
|
274
274
|
end
|
275
275
|
|
276
276
|
it 'should fail fast if parent keys are missing' do
|
@@ -303,15 +303,15 @@ describe Cequel::Record::Persistence do
|
|
303
303
|
end
|
304
304
|
|
305
305
|
it 'should change existing column value' do
|
306
|
-
subject[:title].
|
306
|
+
expect(subject[:title]).to eq('Cequel 1.0')
|
307
307
|
end
|
308
308
|
|
309
309
|
it 'should add new column value' do
|
310
|
-
subject[:author_id].
|
310
|
+
expect(subject[:author_id]).to eq(author_id)
|
311
311
|
end
|
312
312
|
|
313
313
|
it 'should remove old column values' do
|
314
|
-
subject[:body].
|
314
|
+
expect(subject[:body]).to be_nil
|
315
315
|
end
|
316
316
|
|
317
317
|
it 'should not allow changing parent key values' do
|
@@ -334,11 +334,11 @@ describe Cequel::Record::Persistence do
|
|
334
334
|
before { post.destroy }
|
335
335
|
|
336
336
|
it 'should delete entire row' do
|
337
|
-
subject.
|
337
|
+
expect(subject).to be_nil
|
338
338
|
end
|
339
339
|
|
340
340
|
it 'should mark record transient' do
|
341
|
-
post.
|
341
|
+
expect(post).to be_transient
|
342
342
|
end
|
343
343
|
end
|
344
344
|
end
|
@@ -17,44 +17,44 @@ describe Cequel::Record::Properties do
|
|
17
17
|
end
|
18
18
|
|
19
19
|
it 'should provide accessor for key' do
|
20
|
-
Post.new { |post| post.permalink = 'big-data' }.permalink.
|
21
|
-
|
20
|
+
expect(Post.new { |post| post.permalink = 'big-data' }.permalink).
|
21
|
+
to eq('big-data')
|
22
22
|
end
|
23
23
|
|
24
24
|
it 'should cast key to correct value' do
|
25
|
-
Post.new { |post| post.permalink = 44 }.permalink.
|
26
|
-
|
25
|
+
expect(Post.new { |post| post.permalink = 44 }.permalink).
|
26
|
+
to eq('44')
|
27
27
|
end
|
28
28
|
|
29
29
|
it 'should have nil key if unset' do
|
30
|
-
Post.new.permalink.
|
30
|
+
expect(Post.new.permalink).to be_nil
|
31
31
|
end
|
32
32
|
|
33
33
|
it 'should provide accessor for data column' do
|
34
|
-
Post.new { |post| post.title = 'Big Data' }.title.
|
34
|
+
expect(Post.new { |post| post.title = 'Big Data' }.title).to eq('Big Data')
|
35
35
|
end
|
36
36
|
|
37
37
|
it 'should cast data column to correct value' do
|
38
|
-
Post.new { |post| post.title = 'Big Data'.force_encoding('US-ASCII') }.
|
39
|
-
title.encoding.name.
|
38
|
+
expect(Post.new { |post| post.title = 'Big Data'.force_encoding('US-ASCII') }.
|
39
|
+
title.encoding.name).to eq('UTF-8')
|
40
40
|
end
|
41
41
|
|
42
42
|
it 'should have nil data column value if unset' do
|
43
|
-
Post.new.title.
|
43
|
+
expect(Post.new.title).to be_nil
|
44
44
|
end
|
45
45
|
|
46
46
|
it 'should allow setting attributes via #attributes=' do
|
47
|
-
Post.new.tap { |post| post.attributes = {:title => 'Big Data' }}.
|
48
|
-
title.
|
47
|
+
expect(Post.new.tap { |post| post.attributes = {:title => 'Big Data' }}.
|
48
|
+
title).to eq('Big Data')
|
49
49
|
end
|
50
50
|
|
51
51
|
it 'should use writers when setting attributes' do
|
52
|
-
Post.new.tap { |post| post.attributes = {:downcased_title => 'big data' }}.
|
53
|
-
title.
|
52
|
+
expect(Post.new.tap { |post| post.attributes = {:downcased_title => 'big data' }}.
|
53
|
+
title).to eq('Big Data')
|
54
54
|
end
|
55
55
|
|
56
56
|
it 'should take attribute arguments to ::new' do
|
57
|
-
Post.new(:downcased_title => 'big data').title.
|
57
|
+
expect(Post.new(:downcased_title => 'big data').title).to eq('Big Data')
|
58
58
|
end
|
59
59
|
|
60
60
|
it 'should provide accessor for list column' do
|
@@ -145,11 +145,11 @@ describe Cequel::Record::Properties do
|
|
145
145
|
end
|
146
146
|
|
147
147
|
it 'should respect default for keys' do
|
148
|
-
Post.new.permalink.
|
148
|
+
expect(Post.new.permalink).to eq('new_permalink')
|
149
149
|
end
|
150
150
|
|
151
151
|
it 'should respect default for data column' do
|
152
|
-
Post.new.title.
|
152
|
+
expect(Post.new.title).to eq('New Post')
|
153
153
|
end
|
154
154
|
|
155
155
|
it 'should respect default for list column' do
|
@@ -173,7 +173,7 @@ describe Cequel::Record::Properties do
|
|
173
173
|
end
|
174
174
|
|
175
175
|
it 'should auto-generate UUID key' do
|
176
|
-
Cequel.uuid?(Post.new.id).
|
176
|
+
expect(Cequel.uuid?(Post.new.id)).to eq(true)
|
177
177
|
end
|
178
178
|
|
179
179
|
it 'should raise ArgumentError if auto specified for non-UUID' do
|
@@ -186,11 +186,11 @@ describe Cequel::Record::Properties do
|
|
186
186
|
end
|
187
187
|
|
188
188
|
it 'should run default proc on keys' do
|
189
|
-
Post.new.subid.
|
189
|
+
expect(Post.new.subid).to eq("subid #{1+1}")
|
190
190
|
end
|
191
191
|
|
192
192
|
it 'should run default proc' do
|
193
|
-
Post.new.title.
|
193
|
+
expect(Post.new.title).to eq("Post #{Date.today}")
|
194
194
|
end
|
195
195
|
end
|
196
196
|
end
|