symmetric-encryption 3.8.2 → 3.8.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.
@@ -5,7 +5,7 @@ require_relative 'test_helper'
5
5
  class CipherTest < Minitest::Test
6
6
  describe 'standalone' do
7
7
 
8
- it "allow setting the cipher_name" do
8
+ it 'allow setting the cipher_name' do
9
9
  cipher = SymmetricEncryption::Cipher.new(
10
10
  cipher_name: 'aes-128-cbc',
11
11
  key: '1234567890ABCDEF1234567890ABCDEF',
@@ -15,7 +15,7 @@ class CipherTest < Minitest::Test
15
15
  assert_equal 'aes-128-cbc', cipher.cipher_name
16
16
  end
17
17
 
18
- it "not require an iv" do
18
+ it 'not require an iv' do
19
19
  cipher = SymmetricEncryption::Cipher.new(
20
20
  key: '1234567890ABCDEF1234567890ABCDEF',
21
21
  encoding: :none
@@ -29,7 +29,7 @@ class CipherTest < Minitest::Test
29
29
  assert_equal result, cipher.encrypt('Hello World')
30
30
  end
31
31
 
32
- it "throw an exception on bad data" do
32
+ it 'throw an exception on bad data' do
33
33
  cipher = SymmetricEncryption::Cipher.new(
34
34
  cipher_name: 'aes-128-cbc',
35
35
  key: '1234567890ABCDEF1234567890ABCDEF',
@@ -47,18 +47,18 @@ class CipherTest < Minitest::Test
47
47
  SymmetricEncryption::Cipher::ENCODINGS.each do |encoding|
48
48
  describe "encoding: #{encoding} with#{'out' unless always_add_header} header" do
49
49
  before do
50
- @social_security_number = "987654321"
50
+ @social_security_number = '987654321'
51
51
  @social_security_number_encrypted =
52
52
  case encoding
53
53
  when :base64
54
54
  always_add_header ? "QEVuQwAAyTeLjsHTa8ykoO95K0KQmg==\n" : "yTeLjsHTa8ykoO95K0KQmg==\n"
55
55
  when :base64strict
56
- always_add_header ? "QEVuQwAAyTeLjsHTa8ykoO95K0KQmg==" : "yTeLjsHTa8ykoO95K0KQmg=="
56
+ always_add_header ? 'QEVuQwAAyTeLjsHTa8ykoO95K0KQmg==' : 'yTeLjsHTa8ykoO95K0KQmg=='
57
57
  when :base16
58
- always_add_header ? "40456e430000c9378b8ec1d36bcca4a0ef792b42909a" : "c9378b8ec1d36bcca4a0ef792b42909a"
58
+ always_add_header ? '40456e430000c9378b8ec1d36bcca4a0ef792b42909a' : 'c9378b8ec1d36bcca4a0ef792b42909a'
59
59
  when :none
60
60
  bin = always_add_header ? "@EnC\x00\x00\xC97\x8B\x8E\xC1\xD3k\xCC\xA4\xA0\xEFy+B\x90\x9A" : "\xC97\x8B\x8E\xC1\xD3k\xCC\xA4\xA0\xEFy+B\x90\x9A"
61
- bin.force_encoding(Encoding.find("binary"))
61
+ bin.force_encoding(Encoding.find('binary'))
62
62
  else
63
63
  raise "Add test for encoding: #{encoding}"
64
64
  end
@@ -73,11 +73,11 @@ class CipherTest < Minitest::Test
73
73
  )
74
74
  end
75
75
 
76
- it "encrypt simple string" do
76
+ it 'encrypt simple string' do
77
77
  assert_equal @social_security_number_encrypted, @cipher.encrypt(@social_security_number)
78
78
  end
79
79
 
80
- it "decrypt string" do
80
+ it 'decrypt string' do
81
81
  assert decrypted = @cipher.decrypt(@social_security_number_encrypted)
82
82
  assert_equal @social_security_number, decrypted
83
83
  assert_equal Encoding.find('utf-8'), decrypted.encoding, decrypted
@@ -93,7 +93,7 @@ class CipherTest < Minitest::Test
93
93
  assert_equal @non_utf8, decrypted
94
94
  end
95
95
 
96
- it "return nil when encrypting nil" do
96
+ it 'return nil when encrypting nil' do
97
97
  assert_equal nil, @cipher.encrypt(nil)
98
98
  end
99
99
 
@@ -101,7 +101,7 @@ class CipherTest < Minitest::Test
101
101
  assert_equal '', @cipher.encrypt('')
102
102
  end
103
103
 
104
- it "return nil when decrypting nil" do
104
+ it 'return nil when decrypting nil' do
105
105
  assert_equal nil, @cipher.decrypt(nil)
106
106
  end
107
107
 
@@ -119,7 +119,7 @@ class CipherTest < Minitest::Test
119
119
  iv: '1234567890ABCDEF',
120
120
  encoding: :none
121
121
  )
122
- @social_security_number = "987654321"
122
+ @social_security_number = '987654321'
123
123
 
124
124
  @social_security_number_encrypted = "A\335*\314\336\250V\340\023%\000S\177\305\372\266"
125
125
  @social_security_number_encrypted.force_encoding('binary') if defined?(Encoding)
@@ -133,39 +133,39 @@ class CipherTest < Minitest::Test
133
133
  assert_equal 'aes-256-cbc', @cipher.cipher_name
134
134
  end
135
135
 
136
- describe "with header" do
136
+ describe 'with header' do
137
137
  before do
138
- @social_security_number = "987654321"
138
+ @social_security_number = '987654321'
139
139
  end
140
140
 
141
- it "build and parse header" do
141
+ it 'build and parse header' do
142
142
  assert random_key_pair = SymmetricEncryption::Cipher.random_key_pair('aes-128-cbc')
143
- assert binary_header = SymmetricEncryption::Cipher.build_header(SymmetricEncryption.cipher.version, compressed=true, random_key_pair[:iv], random_key_pair[:key], random_key_pair[:cipher_name])
143
+ assert binary_header = SymmetricEncryption::Cipher.build_header(SymmetricEncryption.cipher.version, true, random_key_pair[:iv], random_key_pair[:key], random_key_pair[:cipher_name])
144
144
  header = SymmetricEncryption::Cipher.parse_header!(binary_header)
145
145
  assert_equal true, header.compressed
146
146
  assert random_cipher = SymmetricEncryption::Cipher.new(random_key_pair)
147
- assert_equal random_cipher.cipher_name, header.cipher_name, "Ciphers differ"
148
- assert_equal random_cipher.send(:key), header.key, "Keys differ"
149
- assert_equal random_cipher.send(:iv), header.iv, "IVs differ"
147
+ assert_equal random_cipher.cipher_name, header.cipher_name, 'Ciphers differ'
148
+ assert_equal random_cipher.send(:key), header.key, 'Keys differ'
149
+ assert_equal random_cipher.send(:iv), header.iv, 'IVs differ'
150
150
 
151
- string = "Hello World"
151
+ string = 'Hello World'
152
152
  cipher = SymmetricEncryption::Cipher.new(key: header.key, iv: header.iv, cipher_name: header.cipher_name)
153
153
  # Test Encryption
154
- assert_equal random_cipher.encrypt(string, false, false), cipher.encrypt(string, false, false), "Encrypted values differ"
154
+ assert_equal random_cipher.encrypt(string, false, false), cipher.encrypt(string, false, false), 'Encrypted values differ'
155
155
  end
156
156
 
157
- it "encrypt and then decrypt without a header" do
157
+ it 'encrypt and then decrypt without a header' do
158
158
  assert encrypted = @cipher.binary_encrypt(@social_security_number, false, false, false)
159
159
  assert_equal @social_security_number, @cipher.decrypt(encrypted)
160
160
  end
161
161
 
162
- it "encrypt and then decrypt using random iv" do
163
- assert encrypted = @cipher.encrypt(@social_security_number, random_iv=true)
162
+ it 'encrypt and then decrypt using random iv' do
163
+ assert encrypted = @cipher.encrypt(@social_security_number, true)
164
164
  assert_equal @social_security_number, @cipher.decrypt(encrypted)
165
165
  end
166
166
 
167
- it "encrypt and then decrypt using random iv with compression" do
168
- assert encrypted = @cipher.encrypt(@social_security_number, random_iv=true, compress=true)
167
+ it 'encrypt and then decrypt using random iv with compression' do
168
+ assert encrypted = @cipher.encrypt(@social_security_number, true, true)
169
169
  assert_equal @social_security_number, @cipher.decrypt(encrypted)
170
170
  end
171
171
 
@@ -0,0 +1,9 @@
1
+ test:
2
+ clients:
3
+ default:
4
+ hosts:
5
+ - localhost:27017
6
+ # All Dates and Times should be returned in UTC, not the local timezone
7
+ use_utc: true
8
+ persist_in_safe_mode: true
9
+ database: symmetric_encryption_test
@@ -46,7 +46,7 @@ begin
46
46
 
47
47
  validates :username,
48
48
  length: {in: 3..20},
49
- format: {with: /\A[\w\d\-[[:alnum:]]]+\z/},
49
+ format: {with: /\A[\w\-]+\z/},
50
50
  allow_blank: true
51
51
  end
52
52
  #@formatter:on
@@ -57,27 +57,27 @@ begin
57
57
  class MongoMapperTest < Minitest::Test
58
58
  describe 'MongoMapperUser' do
59
59
  before do
60
- @bank_account_number = "1234567890"
61
- @bank_account_number_encrypted = "QEVuQwIAL94ArJeFlJrZp6SYsvoOGA=="
60
+ @bank_account_number = '1234567890'
61
+ @bank_account_number_encrypted = 'QEVuQwIAL94ArJeFlJrZp6SYsvoOGA=='
62
62
 
63
- @social_security_number = "987654321"
64
- @social_security_number_encrypted = "QEVuQwIAS+8X1NRrqdfEIQyFHVPuVA=="
63
+ @social_security_number = '987654321'
64
+ @social_security_number_encrypted = 'QEVuQwIAS+8X1NRrqdfEIQyFHVPuVA=='
65
65
 
66
66
  @integer = 32768
67
- @integer_encrypted = "FA3smFQEKqB/ITv+A0xACg=="
67
+ @integer_encrypted = 'FA3smFQEKqB/ITv+A0xACg=='
68
68
 
69
69
  @float = 0.9867
70
- @float_encrypted = "z7Pwt2JDp74d+u0IXFAdrQ=="
70
+ @float_encrypted = 'z7Pwt2JDp74d+u0IXFAdrQ=='
71
71
 
72
72
  @date = Date.parse('20120320')
73
- @date_encrypted = "WTkSPHo5ApSSHBJMxxWt2A=="
73
+ @date_encrypted = 'WTkSPHo5ApSSHBJMxxWt2A=='
74
74
 
75
- @string = "A string containing some data to be encrypted with a random initialization vector"
76
- @long_string = "A string containing some data to be encrypted with a random initialization vector and compressed since it takes up so much space in plain text form"
75
+ @string = 'A string containing some data to be encrypted with a random initialization vector'
76
+ @long_string = 'A string containing some data to be encrypted with a random initialization vector and compressed since it takes up so much space in plain text form'
77
77
 
78
78
  @integer_value = 12
79
79
  @float_value = 88.12345
80
- @decimal_value = BigDecimal.new("22.51")
80
+ @decimal_value = BigDecimal.new('22.51')
81
81
  @datetime_value = DateTime.new(2001, 11, 26, 20, 55, 54, "-5")
82
82
  @time_value = Time.new(2013, 01, 01, 22, 30, 00, "-04:00")
83
83
  @date_value = Date.new(1927, 04, 02)
@@ -86,7 +86,7 @@ begin
86
86
  @user = MongoMapperUser.new(
87
87
  encrypted_bank_account_number: @bank_account_number_encrypted,
88
88
  encrypted_social_security_number: @social_security_number_encrypted,
89
- name: "Joe Bloggs",
89
+ name: 'Joe Bloggs',
90
90
  # data type specific fields
91
91
  integer_value: @integer_value,
92
92
  aliased_integer_value: @integer_value,
@@ -102,7 +102,7 @@ begin
102
102
  )
103
103
  end
104
104
 
105
- it "have encrypted methods" do
105
+ it 'have encrypted methods' do
106
106
  assert_equal true, @user.respond_to?(:encrypted_bank_account_number)
107
107
  assert_equal true, @user.respond_to?(:encrypted_social_security_number)
108
108
  assert_equal true, @user.respond_to?(:encrypted_string)
@@ -116,7 +116,7 @@ begin
116
116
  assert_equal false, @user.respond_to?(:encrypted_name=)
117
117
  end
118
118
 
119
- it "have unencrypted methods" do
119
+ it 'have unencrypted methods' do
120
120
  assert_equal true, @user.respond_to?(:bank_account_number)
121
121
  assert_equal true, @user.respond_to?(:social_security_number)
122
122
  assert_equal true, @user.respond_to?(:string)
@@ -130,22 +130,22 @@ begin
130
130
  assert_equal true, @user.respond_to?(:name=)
131
131
  end
132
132
 
133
- it "support aliased fields" do
133
+ it 'support aliased fields' do
134
134
  assert_equal true, @user.respond_to?(:aliased_integer_value=)
135
135
  assert_equal true, @user.respond_to?(:aliased_integer_value)
136
136
  end
137
137
 
138
- it "have unencrypted values" do
138
+ it 'have unencrypted values' do
139
139
  assert_equal @bank_account_number, @user.bank_account_number
140
140
  assert_equal @social_security_number, @user.social_security_number
141
141
  end
142
142
 
143
- it "have encrypted values" do
143
+ it 'have encrypted values' do
144
144
  assert_equal @bank_account_number_encrypted, @user.encrypted_bank_account_number
145
145
  assert_equal @social_security_number_encrypted, @user.encrypted_social_security_number
146
146
  end
147
147
 
148
- it "support same iv" do
148
+ it 'support same iv' do
149
149
  @user.social_security_number = @social_security_number
150
150
  assert first_value = @user.social_security_number
151
151
  # Assign the same value
@@ -153,7 +153,7 @@ begin
153
153
  assert_equal first_value, @user.social_security_number
154
154
  end
155
155
 
156
- it "support a random iv" do
156
+ it 'support a random iv' do
157
157
  @user.string = @string
158
158
  assert first_value = @user.encrypted_string
159
159
  # Assign the same value
@@ -161,26 +161,26 @@ begin
161
161
  assert_equal true, first_value != @user.encrypted_string
162
162
  end
163
163
 
164
- it "support a random iv and compress" do
164
+ it 'support a random iv and compress' do
165
165
  @user.string = @long_string
166
166
  @user.long_string = @long_string
167
167
 
168
168
  assert_equal true, (@user.encrypted_long_string.length.to_f / @user.encrypted_string.length) < 0.8
169
169
  end
170
170
 
171
- it "encrypt" do
171
+ it 'encrypt' do
172
172
  user = MongoMapperUser.new
173
173
  user.bank_account_number = @bank_account_number
174
174
  assert_equal @bank_account_number, user.bank_account_number
175
175
  assert_equal @bank_account_number_encrypted, user.encrypted_bank_account_number
176
176
  end
177
177
 
178
- it "all paths it lead to the same result" do
178
+ it 'all paths it lead to the same result' do
179
179
  assert_equal @bank_account_number_encrypted, (@user.encrypted_social_security_number = @bank_account_number_encrypted)
180
180
  assert_equal @bank_account_number, @user.social_security_number
181
181
  end
182
182
 
183
- it "all paths it lead to the same result 2" do
183
+ it 'all paths it lead to the same result 2' do
184
184
  assert_equal @bank_account_number, (@user.social_security_number = @bank_account_number)
185
185
  assert_equal @bank_account_number_encrypted, @user.encrypted_social_security_number
186
186
  end
@@ -197,7 +197,7 @@ begin
197
197
  assert_equal nil, user.encrypted_social_security_number
198
198
  end
199
199
 
200
- it "allow unencrypted values to be passed to the constructor" do
200
+ it 'allow unencrypted values to be passed to the constructor' do
201
201
  user = MongoMapperUser.new(bank_account_number: @bank_account_number, social_security_number: @social_security_number)
202
202
  assert_equal @bank_account_number, user.bank_account_number
203
203
  assert_equal @social_security_number, user.social_security_number
@@ -205,7 +205,7 @@ begin
205
205
  assert_equal @social_security_number_encrypted, user.encrypted_social_security_number
206
206
  end
207
207
 
208
- it "allow both encrypted and unencrypted values to be passed to the constructor" do
208
+ it 'allow both encrypted and unencrypted values to be passed to the constructor' do
209
209
  user = MongoMapperUser.new(encrypted_bank_account_number: @bank_account_number_encrypted, social_security_number: @social_security_number)
210
210
  assert_equal @bank_account_number, user.bank_account_number
211
211
  assert_equal @social_security_number, user.social_security_number
@@ -234,7 +234,7 @@ begin
234
234
  end
235
235
  end
236
236
 
237
- describe "data types" do
237
+ describe 'data types' do
238
238
  before do
239
239
  @user.save!
240
240
  @user_clone = MongoMapperUser.find(@user.id)
@@ -244,26 +244,26 @@ begin
244
244
  @user.destroy if @user
245
245
  end
246
246
 
247
- describe "aliased fields" do
248
- it "return correct data type" do
249
- @user_clone.aliased_integer_value = "5"
247
+ describe 'aliased fields' do
248
+ it 'return correct data type' do
249
+ @user_clone.aliased_integer_value = '5'
250
250
  assert_equal 5, @user_clone.aliased_integer_value
251
251
  end
252
252
  end
253
253
 
254
- describe "integer values" do
255
- it "return correct data type" do
254
+ describe 'integer values' do
255
+ it 'return correct data type' do
256
256
  assert_equal @integer_value, @user_clone.integer_value
257
257
  assert @user.clone.integer_value.kind_of?(Integer)
258
258
  end
259
259
 
260
- it "coerce data type before save" do
261
- u = MongoMapperUser.new(integer_value: "5")
260
+ it 'coerce data type before save' do
261
+ u = MongoMapperUser.new(integer_value: '5')
262
262
  assert_equal 5, u.integer_value
263
263
  assert u.integer_value.kind_of?(Integer)
264
264
  end
265
265
 
266
- it "permit replacing value with nil" do
266
+ it 'permit replacing value with nil' do
267
267
  @user_clone.integer_value = nil
268
268
  @user_clone.save!
269
269
 
@@ -272,7 +272,7 @@ begin
272
272
  assert_nil @user.encrypted_integer_value
273
273
  end
274
274
 
275
- it "permit replacing value" do
275
+ it 'permit replacing value' do
276
276
  new_integer_value = 98
277
277
  @user_clone.integer_value = new_integer_value
278
278
  @user_clone.save!
@@ -282,19 +282,19 @@ begin
282
282
  end
283
283
  end
284
284
 
285
- describe "float values" do
286
- it "return correct data type" do
285
+ describe 'float values' do
286
+ it 'return correct data type' do
287
287
  assert_equal @float_value, @user_clone.float_value
288
288
  assert @user.clone.float_value.kind_of?(Float)
289
289
  end
290
290
 
291
- it "coerce data type before save" do
292
- u = MongoMapperUser.new(float_value: "5.6")
291
+ it 'coerce data type before save' do
292
+ u = MongoMapperUser.new(float_value: '5.6')
293
293
  assert_equal 5.6, u.float_value
294
294
  assert u.float_value.kind_of?(Float)
295
295
  end
296
296
 
297
- it "permit replacing value with nil" do
297
+ it 'permit replacing value with nil' do
298
298
  @user_clone.float_value = nil
299
299
  @user_clone.save!
300
300
 
@@ -303,7 +303,7 @@ begin
303
303
  assert_nil @user.encrypted_float_value
304
304
  end
305
305
 
306
- it "permit replacing value" do
306
+ it 'permit replacing value' do
307
307
  new_float_value = 45.4321
308
308
  @user_clone.float_value = new_float_value
309
309
  @user_clone.save!
@@ -313,19 +313,19 @@ begin
313
313
  end
314
314
  end
315
315
 
316
- describe "decimal values" do
317
- it "return correct data type" do
316
+ describe 'decimal values' do
317
+ it 'return correct data type' do
318
318
  assert_equal @decimal_value, @user_clone.decimal_value
319
319
  assert @user.clone.decimal_value.kind_of?(BigDecimal)
320
320
  end
321
321
 
322
- it "coerce data type before save" do
323
- u = MongoMapperUser.new(decimal_value: "99.95")
324
- assert_equal BigDecimal.new("99.95"), u.decimal_value
322
+ it 'coerce data type before save' do
323
+ u = MongoMapperUser.new(decimal_value: '99.95')
324
+ assert_equal BigDecimal.new('99.95'), u.decimal_value
325
325
  assert u.decimal_value.kind_of?(BigDecimal)
326
326
  end
327
327
 
328
- it "permit replacing value with nil" do
328
+ it 'permit replacing value with nil' do
329
329
  @user_clone.decimal_value = nil
330
330
  @user_clone.save!
331
331
 
@@ -334,8 +334,8 @@ begin
334
334
  assert_nil @user.encrypted_decimal_value
335
335
  end
336
336
 
337
- it "permit replacing value" do
338
- new_decimal_value = BigDecimal.new("99.95")
337
+ it 'permit replacing value' do
338
+ new_decimal_value = BigDecimal.new('99.95')
339
339
  @user_clone.decimal_value = new_decimal_value
340
340
  @user_clone.save!
341
341
 
@@ -344,20 +344,20 @@ begin
344
344
  end
345
345
  end
346
346
 
347
- describe "datetime values" do
348
- it "return correct data type" do
347
+ describe 'datetime values' do
348
+ it 'return correct data type' do
349
349
  assert_equal @datetime_value, @user_clone.datetime_value
350
350
  assert @user.clone.datetime_value.kind_of?(DateTime)
351
351
  end
352
352
 
353
- it "coerce data type before save" do
353
+ it 'coerce data type before save' do
354
354
  now = Time.now
355
355
  u = MongoMapperUser.new(datetime_value: now)
356
356
  assert_equal now, u.datetime_value
357
357
  assert u.datetime_value.kind_of?(DateTime)
358
358
  end
359
359
 
360
- it "permit replacing value with nil" do
360
+ it 'permit replacing value with nil' do
361
361
  @user_clone.datetime_value = nil
362
362
  @user_clone.save!
363
363
 
@@ -366,8 +366,8 @@ begin
366
366
  assert_nil @user.encrypted_datetime_value
367
367
  end
368
368
 
369
- it "permit replacing value" do
370
- new_datetime_value = DateTime.new(1998, 10, 21, 8, 33, 28, "+5")
369
+ it 'permit replacing value' do
370
+ new_datetime_value = DateTime.new(1998, 10, 21, 8, 33, 28, '+5')
371
371
  @user_clone.datetime_value = new_datetime_value
372
372
  @user_clone.save!
373
373
 
@@ -376,20 +376,20 @@ begin
376
376
  end
377
377
  end
378
378
 
379
- describe "time values" do
380
- it "return correct data type" do
379
+ describe 'time values' do
380
+ it 'return correct data type' do
381
381
  assert_equal @time_value, @user_clone.time_value
382
382
  assert @user.clone.time_value.kind_of?(Time)
383
383
  end
384
384
 
385
- it "coerce data type before save" do
385
+ it 'coerce data type before save' do
386
386
  now = Time.now
387
387
  u = MongoMapperUser.new(time_value: now)
388
388
  assert_equal now, u.time_value
389
389
  assert u.time_value.kind_of?(Time)
390
390
  end
391
391
 
392
- it "permit replacing value with nil" do
392
+ it 'permit replacing value with nil' do
393
393
  @user_clone.time_value = nil
394
394
  @user_clone.save!
395
395
 
@@ -398,8 +398,8 @@ begin
398
398
  assert_nil @user.encrypted_time_value
399
399
  end
400
400
 
401
- it "permit replacing value" do
402
- new_time_value = Time.new(1998, 10, 21, 8, 33, 28, "+04:00")
401
+ it 'permit replacing value' do
402
+ new_time_value = Time.new(1998, 10, 21, 8, 33, 28, '+04:00')
403
403
  @user_clone.time_value = new_time_value
404
404
  @user_clone.save!
405
405
 
@@ -408,20 +408,20 @@ begin
408
408
  end
409
409
  end
410
410
 
411
- describe "date values" do
412
- it "return correct data type" do
411
+ describe 'date values' do
412
+ it 'return correct data type' do
413
413
  assert_equal @date_value, @user_clone.date_value
414
414
  assert @user.clone.date_value.kind_of?(Date)
415
415
  end
416
416
 
417
- it "coerce data type before save" do
417
+ it 'coerce data type before save' do
418
418
  now = Time.now
419
419
  u = MongoMapperUser.new(date_value: now)
420
420
  assert_equal now.to_date, u.date_value
421
421
  assert u.date_value.kind_of?(Date)
422
422
  end
423
423
 
424
- it "permit replacing value with nil" do
424
+ it 'permit replacing value with nil' do
425
425
  @user_clone.date_value = nil
426
426
  @user_clone.save!
427
427
 
@@ -430,7 +430,7 @@ begin
430
430
  assert_nil @user.encrypted_date_value
431
431
  end
432
432
 
433
- it "permit replacing value" do
433
+ it 'permit replacing value' do
434
434
  new_date_value = Date.new(1998, 10, 21)
435
435
  @user_clone.date_value = new_date_value
436
436
  @user_clone.save!
@@ -440,19 +440,19 @@ begin
440
440
  end
441
441
  end
442
442
 
443
- describe "true values" do
444
- it "return correct data type" do
443
+ describe 'true values' do
444
+ it 'return correct data type' do
445
445
  assert_equal true, @user_clone.true_value
446
446
  assert @user.clone.true_value.kind_of?(TrueClass)
447
447
  end
448
448
 
449
- it "coerce data type before save" do
450
- u = MongoMapperUser.new(true_value: "1")
449
+ it 'coerce data type before save' do
450
+ u = MongoMapperUser.new(true_value: '1')
451
451
  assert_equal true, u.true_value
452
452
  assert u.true_value.kind_of?(TrueClass)
453
453
  end
454
454
 
455
- it "permit replacing value with nil" do
455
+ it 'permit replacing value with nil' do
456
456
  @user_clone.true_value = nil
457
457
  @user_clone.save!
458
458
 
@@ -461,7 +461,7 @@ begin
461
461
  assert_nil @user.encrypted_true_value
462
462
  end
463
463
 
464
- it "permit replacing value" do
464
+ it 'permit replacing value' do
465
465
  new_value = false
466
466
  @user_clone.true_value = new_value
467
467
  @user_clone.save!
@@ -471,19 +471,19 @@ begin
471
471
  end
472
472
  end
473
473
 
474
- describe "false values" do
475
- it "return correct data type" do
474
+ describe 'false values' do
475
+ it 'return correct data type' do
476
476
  assert_equal false, @user_clone.false_value
477
477
  assert @user.clone.false_value.kind_of?(FalseClass)
478
478
  end
479
479
 
480
- it "coerce data type before save" do
481
- u = MongoMapperUser.new(false_value: "0")
480
+ it 'coerce data type before save' do
481
+ u = MongoMapperUser.new(false_value: '0')
482
482
  assert_equal false, u.false_value
483
483
  assert u.false_value.kind_of?(FalseClass)
484
484
  end
485
485
 
486
- it "permit replacing value with nil" do
486
+ it 'permit replacing value with nil' do
487
487
  @user_clone.false_value = nil
488
488
  @user_clone.save!
489
489
 
@@ -492,7 +492,7 @@ begin
492
492
  assert_nil @user.encrypted_false_value
493
493
  end
494
494
 
495
- it "permit replacing value" do
495
+ it 'permit replacing value' do
496
496
  new_value = true
497
497
  @user_clone.false_value = new_value
498
498
  @user_clone.save!
@@ -502,7 +502,7 @@ begin
502
502
  end
503
503
  end
504
504
 
505
- describe "JSON Serialization" do
505
+ describe 'JSON Serialization' do
506
506
  before do
507
507
  # JSON Does not support symbols, so they will come back as strings
508
508
  # Convert symbols to string in the test
@@ -512,18 +512,18 @@ begin
512
512
  end
513
513
  end
514
514
 
515
- it "return correct data type" do
515
+ it 'return correct data type' do
516
516
  assert_equal @h, @user_clone.data_json
517
517
  assert @user.clone.data_json.kind_of?(Hash)
518
518
  end
519
519
 
520
- it "not coerce data type (leaves as hash) before save" do
520
+ it 'not coerce data type (leaves as hash) before save' do
521
521
  u = MongoMapperUser.new(data_json: @h)
522
522
  assert_equal @h, u.data_json
523
523
  assert u.data_json.kind_of?(Hash)
524
524
  end
525
525
 
526
- it "permit replacing value with nil" do
526
+ it 'permit replacing value with nil' do
527
527
  @user_clone.data_json = nil
528
528
  @user_clone.save!
529
529
 
@@ -532,7 +532,7 @@ begin
532
532
  assert_nil @user.encrypted_data_json
533
533
  end
534
534
 
535
- it "permit replacing value" do
535
+ it 'permit replacing value' do
536
536
  new_value = @h.clone
537
537
  new_value['c'] = 'C'
538
538
  @user_clone.data_json = new_value
@@ -543,19 +543,19 @@ begin
543
543
  end
544
544
  end
545
545
 
546
- describe "YAML Serialization" do
547
- it "return correct data type" do
546
+ describe 'YAML Serialization' do
547
+ it 'return correct data type' do
548
548
  assert_equal @h, @user_clone.data_yaml
549
549
  assert @user.clone.data_yaml.kind_of?(Hash)
550
550
  end
551
551
 
552
- it "not coerce data type (leaves as hash) before save" do
552
+ it 'not coerce data type (leaves as hash) before save' do
553
553
  u = MongoMapperUser.new(data_yaml: @h)
554
554
  assert_equal @h, u.data_yaml
555
555
  assert u.data_yaml.kind_of?(Hash)
556
556
  end
557
557
 
558
- it "permit replacing value with nil" do
558
+ it 'permit replacing value with nil' do
559
559
  @user_clone.data_yaml = nil
560
560
  @user_clone.save!
561
561
 
@@ -564,7 +564,7 @@ begin
564
564
  assert_nil @user.encrypted_data_yaml
565
565
  end
566
566
 
567
- it "permit replacing value" do
567
+ it 'permit replacing value' do
568
568
  new_value = @h.clone
569
569
  new_value[:c] = 'C'
570
570
  @user_clone.data_yaml = new_value